Я новичок в ldap, а также в ресурсах jndi и даже в jboss (lol), и я пытаюсь выяснить, как это сделать. Мне нужно подключиться к LDAP-серверу, который указан в файле jboss standalone.xml, и ему нужно получить доступ к нему через jndi в java.LDAP jndi connection (java + jboss eap 6)
Я определил в standalone.xml и внешнего контекста, чтобы соединиться с LDAP:
<subsystem xmlns="urn:jboss:domain:naming:1.4">
<bindings>
<external-context name="java:global/ldap" module="org.jboss.as.naming" class="javax.naming.ldap.InitialLdapContext" cache="true">
<environment>
<property name="java.naming.factory.initial" value="com.sun.jndi.ldap.LdapCtxFactory"/>
<property name="java.naming.provider.url" value="ldap://host:port"/>
<property name="java.naming.security.authentication" value="simple"/>
<property name="java.naming.security.principal" value="user"/>
<property name="java.naming.security.credentials" value="password"/>
</environment>
</external-context>
</bindings>
<remote-naming/>
</subsystem>
Тогда в Java я имею этот код:
InitialLdapContext ctx = new InitialLdapContext();
LdapContext ldapContext = null;
ldapContext = (LdapContext) ctx.lookup("java:global/ldap"));
Но когда поиск выполняется I получите следующую ошибку:
java.lang.NoSuchMethodException: javax.naming.ldap.InitialLdapContext.<init>(java.util.Hashtable)
Я пробовал много разных примеров, но я ничего не могу получить ...
Заранее спасибо.