Problemas básicos! Alguém me dê alguma dica, POR FAVOR!

3 respostas
J

Olá!

Estou começando agora a estudar J2EE e estou estudando através de um livro (J2EE em 21 dias), porém estou emperrado em um problema(mesmo seguindo estritamente o que está descrito no livro)
[color="red"]POR FAVOR ALGUÉM ME AJUDE![/color]

Instalei o OpenLDAP (windows) e ele está executando corretamente, no entanto quando vou "startar" o J2EE recebo a seguinte mensagem de erro:

javax.naming.ConfigurationException: Invalid URL:ldap://localhost:389
Root exception is java.net.MalformedURLException: unknown protocol:ldap
A mensagem de erro completa é essa:
C:\>j2ee -verbose
J2EE server listen port: 1050
Naming service started:1050
javax.naming.ConfigurationException: Invalid URL: ldap://localhost:389
Root exception is java.net.MalformedURLException: unknown protocol: ldap
at java.net.URL.<init>(URL.java:586)
at java.net.URL.<init>(URL.java:476)
at java.net.URL.<init>(URL.java:425)
at com.sun.jndi.cosnaming.CNCtx.getStringifiedIor(CNCtx.java:401)
at com.sun.jndi.cosnaming.CNCtx.initOrbAndRootContext(CNCtx.java:198)
at com.sun.jndi.cosnaming.CNCtx.<init>(CNCtx.java:69)
at com.sun.jndi.cosnaming.CNCtxFactory.getInitialContext(CNCtxFactory.java:32)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:662)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
at javax.naming.InitialContext.init(InitialContext.java:219)
at javax.naming.InitialContext.<init>(InitialContext.java:195)
at com.sun.enterprise.naming.NamingManagerImpl.<init>(NamingManagerImpl.java :104)
at com.sun.enterprise.naming.NamingManagerImpl.<init>(NamingManagerImpl.java :82)
at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:240)
at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:972)
javax.naming.ConfigurationException: Invalid URL: ldap://localhost:389. Root exception is
java.net.MalformedURLException: unknown protocol: ldap
at java.net.URL.<init>(URL.java:586)
at java.net.URL.<init>(URL.java:476)
at java.net.URL.<init>(URL.java:425)
at com.sun.jndi.cosnaming.CNCtx.getStringifiedIor(CNCtx.java:401)
at com.sun.jndi.cosnaming.CNCtx.initOrbAndRootContext(CNCtx.java:198)
at com.sun.jndi.cosnaming.CNCtx.<init>(CNCtx.java:69)
at com.sun.jndi.cosnaming.CNCtxFactory.getInitialContext(CNCtxFactory.java:32)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:662)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
at javax.naming.InitialContext.init(InitialContext.java:219)
at javax.naming.InitialContext.<init>(InitialContext.java:195)
at com.sun.enterprise.naming.NamingManagerImpl.<init>(NamingManagerImpl.java :104)
at com.sun.enterprise.naming.NamingManagerImpl.<init>(NamingManagerImpl.java:82)
at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:240)
at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:972)

java.lang.RuntimeException: Invalid URL: ldap://localhost:389
at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:346)
at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:972)

J2EE server reported the following error: Invalid URL: ldap://localhost:389
Error executing J2EE server ...
O arquivo jndi.properties contém as seguintes linhas:
java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
java.naming.provider.url=ldap://localhost:389
Fiz esse teste para ver se poderia ser algum problema de ambiente, mas compilou corretamente também:
import com.sun.jndi.ldap.*;

public class Test {
       public static void main(String[] args){
               LdapCtxFactory ctxFac = new LdapCtxFactory();
       }
}
O meu ambiente é seguinte :

*Windows 2K professional
*Cloudscape
*J2EE 1.3.1 SDK
*OpenLDAP for windows [url]http://www.ilex.fr/openldap/[/url]

Já tentei procurar uma resposta no google, mas até agora não consegui encontrar nada!

Abraços para todos :)

3 Respostas

M

eu tb ja estudei por este livro e passei completamente a parte de JNDI com serviço de diretórios… há a necessidade de vc usar isso em algum projeto? Vc vai usar JNDI pra mais alguma coisa sem ser bindar referencias no proprio JNDI do container? O meu conselho era não ficar perdendo tempo com algo q vc nunca iria mexer… hehehe, não digo nunca né, sei lá, mas é q nunca vi… :oops: :roll:

J

Obrigado pela ajuda! :slight_smile:

Você estudou por ele também?

Que legal, se eu precisar de alguma dica específica sobre algum exercício, posso perguntar para você??

Ok, não tenho necessidades atuais em relação ao OpenLDAP + JNDI, mas mesmo assim fiquei curioso para descobrir o motivo do erro!

Será que ninguém sabe a causa dese erro? Era para funcionar!!

Abraços a todos

M

eu tenho o livro, não fiz exercício nenhum, no caso de JNDI, só uso para fazer pesquisas por EJBs e DataSources bindados no contexto… :roll:

Criado 12 de janeiro de 2005
Ultima resposta 13 de jan. de 2005
Respostas 3
Participantes 2