Desenvolvi um servlet que tenta efetuar uma busca (search) em um servidor LDAP. Qualquer comando lança uma exception:
NotContextException: Not an instance of DirContext
Detalhe: se colocar este código em uma Java application (método main, executando do prompt) funciona normalmente. Dá erro apenas no servlet.
Alguém tem alguma idéia? Aqui vai o código:
Hashtable env = new Hashtable(11);
DirContext ctx = new InitialDirContext(env);
Ainda não funcionou…
Estou usando o IBM Directory Server. Qual app server está utilizando? Existe alguma configuração que deve ser feita no app server?
Eu estou usando o JBoss, e não tive que fazer nenhuma parametrização.
O problema pode estar no diretório. Nós tivemos vários problemas quando mudamos do iPlanet para o OpenLDAP, muitas coisa que funcionavam no iPlanet tiveram que ter alguma coisa alterada ou retirada do código para funcionar no OpenLdap.
Sei que parece estranho, mas essa foi a realidade.
Agora nesse caso especifico eu não tenho IBM aqui para poder testar, mas aqui eu não tive nenhum problema de rodar o código dentro ou fora do AppServer.