JBoss JNDI:编程绑定的工作原理

JBoss JNDI:编程绑定的工作原理,jboss,jndi,Jboss,Jndi,我知道如何使用JNDI,使用InitialContext并通过JNDI绑定管理器使用的配置文件将对象绑定到JNDI。您还可以通过编程方式将对象绑定到JNDI。然而,这是我不太了解JNDI如何在JBOSS中工作的部分 当JBoss第一次启动时,它会根据配置文件绑定对象。但是,当JNDI名称以编程方式绑定时,JNDI名称将在JBoss启动后绑定 我的问题是,如果JBoss被重新启动,程序绑定的JNDI名称会丢失吗?这取决于您绑定到什么 如果绑定到java:namespace,当JBoss退出时,绑定

我知道如何使用JNDI,使用
InitialContext
并通过JNDI绑定管理器使用的配置文件将对象绑定到JNDI。您还可以通过编程方式将对象绑定到JNDI。然而,这是我不太了解JNDI如何在JBOSS中工作的部分

当JBoss第一次启动时,它会根据配置文件绑定对象。但是,当JNDI名称以编程方式绑定时,JNDI名称将在JBoss启动后绑定


我的问题是,如果JBoss被重新启动,程序绑定的JNDI名称会丢失吗?

这取决于您绑定到什么

如果绑定到java:namespace,当JBoss退出时,绑定将消失,因为它不是持久的

如果绑定到LDAP命名空间,则绑定是持久的,因为LDAP是持久存储

如果绑定到CORBA名称空间,则绑定将与绑定到的COSNaming服务共同终止


如果绑定到RMI命名空间,则绑定将与绑定到的注册表同时终止。

如果对象绑定到全局命名空间会怎么样?什么全局命名空间?当我使用JMX控制台使用JNDIView服务列出绑定的JNDI值时。有一个“java:Namespace”部分和一个“全局JNDI命名空间”。显然,全局JNDI值可以远程访问,而java不能