2013-11-26 83 views
3
  1. 如何將任意字符串綁定到JBoss EAP 6中的JNDI?我曾經通過 通過org.jboss.naming.JNDIBindingServiceMgr MBean執行 之前的EAP版本。JBoss:將值綁定到類似於JNDIBindingServiceMgr的JBoss EAP 6中的JNDI

  2. JBoss EAP 6中是否有類似於org.jboss.naming.JNDIBindingServiceMgr 的東西?

  3. 我們正在將應用程序從jboss-5.1.EAP遷移到jboss-eap-6.1。 我們需要將一些東西綁定到JNDI中,因此應用程序可以查找 環境變量的值。

非常感謝。

+0

任何幫助表示讚賞.. – adi

回答

4

你可以做到以下幾點:

standalone.xml:

<subsystem xmlns="urn:jboss:domain:naming:1.2"> 
    <bindings> 
    <simple name="java:global/user" value="newUser"/>     
    </bindings> 
</subsystem> 

和Spring上下文:

<bean class="java.util.Properties"> 
    <constructor-arg> 
    <map> 
     <entry key="user"> 
     <jee:jndi-lookup jndi-name="java:global/user" /> 
     </entry> 
    </map> 
    </constructor-arg> 
</bean> 
+0

這工作,謝謝 – adi

+1

@adi pfft,我在這個一小時前給出了相同的答案,不公平:P – eis

+0

如果你想檢查目標命名空間'urn:jboss:domain:naming :1.2' xsd你可以看到https://github.com/wildfly/wildfly/tree/master/naming/src/main/resources/schema – taringamberini

0

如果簡單地說:

InitialContext ctx = new InitialContext(); 
ctx.bind("varName", "value"); 

如果使用的JBoss實例的內部的代碼,你可以綁定變量到JNDI。請記住爲varName使用正確的格式來綁定所需範圍內的變量。

+0

我要尋找一個JBoss CONFIGRATION例如... r。在standalone.xml中添加java屬性 – adi

2

在您的應用程序的配置,你可以在ejb-jar.xml部署描述符之類的東西

<javaee:env-entry> 
    <javaee:description>JNDI logging context for this app</javaee:description> 
    <javaee:env-entry-name>logback/context-name</javaee:env-entry-name> 
    <javaee:env-entry-type>java.lang.String</javaee:env-entry-type> 
    <javaee:env-entry-value>our-app-context</javaee:env-entry-value> 
</javaee:env-entry> 

,或者,如果你喜歡有它在服務器standalone.xml,做

<subsystem xmlns="urn:jboss:domain:naming:1.1"> 
    <bindings> 
     <simple name="my/jndi/key" value="MyJndiValue"/> 
    </bindings> 
</subsystem> 

後者(standalone.xml)是JBoss 7.1的一個特性,可以在EAP 6.0中使用。在JBoss AS 7.0中,需要根據this thread使用虛擬應用程序。

相關問題