簡體   English   中英

使用OpenDJ的OpenAM-NameNotFoundException:ldap / idp / userDN-啟動JBoss時

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM