![](/img/trans.png)
[英]NameNotFoundException when starting JBoss with an EAR using HornetQ ConnectionFactory via JNDI using Spring JMS
[英]OpenAM with OpenDJ - NameNotFoundException: ldap/idp/userDN - when starting up JBoss
我正在使用OpenAM及其嵌入式OpenDJ作為LDAP服務來保護在JBoss 7上運行的Web應用程序。
當我啟動JBoss時,出現以下錯誤:
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ldapUserDN'
...
Caused by: javax.naming.NameNotFoundException: ldap/idp/userDN -- service jboss.naming.context.java.ldap.idp.userDN
因此,顯然,Spring正在尋找JNDI節點ldap / idp / userDN 。 但是我在項目中獲得的jboss配置文件具有以下條目:
<simple name="ldap/opendj/url" value="ldap://localhost:50389"/>
<simple name="ldap/opendj/userDN" value="cn=Directory Manager"/>
<simple name="ldap/opendj/password" value="mypassword"/>
<simple name="ldap/opendj/baseDN" value="dc=opensso,dc=java,dc=net"/>
並將這些屬性添加到我在JBoss上的JNDI樹中。
例如,如果我將其更改為“ ldap / idp / userDN”,那么我會擺脫該錯誤,但是我想知道是否存在將“ ldap / opendj / userDN”映射到“ ldap / idp / userDN”的地方”,這是我想念的。
如果您使用的是Spring LDAP,則ldap-context-source的實際配置位於spring config文件中,可能看起來像這樣:
<jee:jndi-lookup jndi-name="ldap/idp/url" id="ldapUrl"/>
<jee:jndi-lookup jndi-name="ldap/idp/userDN" id="ldapUserDN"/>
<jee:jndi-lookup jndi-name="ldap/idp/password" id="ldapPassword"/>
<jee:jndi-lookup jndi-name="ldap/idp/baseDN" id="ldapBaseDN"/>
<ldap:context-source url="#{ldapUrl}"
username="#{ldapUserDN}"
password="#{ldapPassword}"
base="#{ldapBaseDN}"
native-pooling="true"/>
因此,jboss配置文件中的jndi條目應與上面的條目匹配。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.