2012-05-30 24 views
4

在独立模式下的JBoss 7.1.1中,所有JNDI绑定都在jboss:domain:naming:1.1子系统的standalone.xml文件中配置。根据文档,standalone.xml在服务器运行时不能被修改。我试过使用JBoss CLI,但我不知道如何编写/修改资源。JBoss 7.1.1在运行时更改JNDI绑定

如何在不重新启动jboss的情况下更改JNDI中的值?

回答

4

应该可以帮助您:https://docs.jboss.org/author/display/AS71/JNDI+Reference

主题 - 绑定条目到JNDI:

一个例子standalone.xml可能看起来像:

<subsystem xmlns="urn:jboss:domain:naming:1.1" > 
    <bindings> 
    <simple name="java:global/a" value="100" type="int" /> 
    <object-factory name="java:global/b" module="com.acme" class="org.acme.MyObjectFactory" /> 
    <lookup name="java:global/c" lookup="java:global/b" /> 
</bindings> 
</subsystem> 


要添加这些条目通过CLI:

/subsystem=naming/binding=java\:global\/mybinding:add(binding-type=simple, type=long, value=1000) 


若要查看采取add命令所有的所有选项(这可以 实际用于得到任何CLI命令的说明):

/subsystem=naming/binding=*:read-operation-description(name=add) 


还没有尝试过,但我希望这有助于!

3

这个问题有很多意见,所以我会回答它。受@mik响应的启发,我已经想出了改变某些JNDI密钥的值,例如java:jboss/api/key到newApiKey运行JBoss CLI和执行:

connect 
/subsystem=naming/binding=java\:jboss\/api\/key/:write-attribute(name=value,value=newApiKey) 

的变化将是standalone.xml服务器上立即可见,也存储(更新),所以它不会得到服务器重新启动后丢失。

相关问题