Я пытаюсь перенести приложение WAS7 на профиль Liberty. И теперь я пытаюсь получить Datasource Mbean, который является частью существующего кода. Я пробовал несколько вариантов, но я всегда получаю «javax.management.InstanceNotFoundException».DataSource Mbean в websphere liberty - получение экземпляра не найдено исключение
Я даю пример кода ниже. Пожалуйста, дайте мне знать, если я что-то пропущу.
DataSource в Server.xml:
<library id="oracle-lib">
<fileset dir="lib" includes="ojdbc6.jar"/>
</library>
<dataSource jndiName="jdbc/db" id="oracleDB" type="javax.sql.DataSource">
<jdbcDriver javax.sql.DataSource="oracle.jdbc.pool.OracleConnectionPoolDataSource" libraryRef="oracle-lib" />
<connectionManager agedTimeout="10" maxIdleTime="1800" connectionTimeout="180" minPoolSize="10" maxPoolSize="1" reapTime="180"/>
<properties.oracle user="user" password="password"
url="jdbc:oracle:thin:@//db-server:1521/db"/>
</dataSource>
Java код:
MBeanServer mbeanServer = ManagementFactory.getPlatformMBeanServer();
ObjectName jvmQuery = new ObjectName("WebSphere:type=ConnectionPoolStats,name=dataSource[oracleDB]/ConnectionManager[default-0]")
Set mBeans = mbeanServer.queryMbeans(jvmQuery,null);
MBeanInfo beanInfo = mbeanServer.getMBeanInfo(jvmQuery);
Я не уверен в коде, я пытаюсь сохранить старый код как можно больше.
Спасибо, Biju
Спасибо Andy .., C была опечатка. Я попробовал выше, и все получилось. Только дело в том, что я внес небольшие изменения в ObjectName, глядя на JConsole. –