我正在使用Apache Commons Configuration来读取standalone-full-ha.xml
应用服务器中的xml文件 - Wildfly 8
中的配置。
<?xml version="1.0" ?>
<server xmlns="urn:jboss:domain:2.2">
...
...
<profile>
...
...
<subsystem xmlns="urn:jboss:domain:datasources:2.0">
<datasources>
<datasource jta="true" jndi-name="java:/TestDB" pool-name="TestDB" enabled="true" use-java-context="true" spy="false" use-ccm="true">
<connection-url>jdbc:sybase:Tds:ip:port/db-name</connection-url>
...
...
</subsystem>
</profile>
</server>
如何从上面的xml中读取jndi名称java:/TestDB
和连接网址jdbc:sybase:Tds:ip:port/db-name
。
我尝试了以下但没有获得任何结果。
XMLConfiguration conf = new XMLConfiguration();
((XMLConfiguration) conf).setDelimiterParsingDisabled(true);
((XMLConfiguration) conf).load("xml file location");
String url = conf.getString("server/profile/subsystem[xmlns= 'urn:jboss:domain:datasources:2.0']/datasources/datasource/connection-url");
String jndiName = conf.getString("server/profile/subsystem[xmlns= 'urn:jboss:domain:datasources:2.0']/datasources/datasource[jndi-name]");
任何人都可以建议如何使用XML apache commons配置从xml读取jndi名称和连接URL。感谢。
答案 0 :(得分:0)
WildFly有一个管理API
(https://docs.jboss.org/author/display/WFLY8/Management+API+reference)
我建议使用该API以访问WildFly配置 而不是“手动”解析它