Hallo.
Ich versuche jetzut schon seit geraumer Zeit mit Hilfe von JAva / JNDI auf ein LDAP zuzugreifen. Bisher blieb ich erfolglos.
Ich habe mit Hilfe eines Buches mir ein bischen Wissen über JNDI verschafft,
LDAP für JAVA Entwickler.
In diesem Buch wird auch ein Zugriff auf ein lokales Ldap Verzeichnis erklärt und demonstriert, was leider bei mir nicht funktioniert.
Ich habe den Anweisungen aus dem Buch so exakt wie es nur möglich ist, folge geleistet. Nur meine Ernte sind Errors....meistens Probleme mit dem Classpath, welche aber normalerweise nicht auftreten dürften.
Frage:
Kann mir einer kurz und knapp einen kleinen Code posten, wo einfach nur mit JNDI eine Connection zu einem LDAP gemacht wird?
oder mir bei der Korrektur der Errors weiterhilft?
hier der Code:
Die Properties stehen in der jndi.properties,
der Inhalt:
java.naming.factory.initial=com.sun.jndi.fscontext.FSContextFactory
java.naming.provider.url=file://c:\\LDAP_DB
Die Fehlermeldungen:
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
at javax.naming.directory.InitialDirContext.getURLOrDefaultInitDirCtx(Unknown Source)
at javax.naming.directory.InitialDirContext.getAttributes(Unknown Source)
at javax.naming.directory.InitialDirContext.getAttributes(Unknown Source)
at Connect.main(Connect.java:66)
Exception in thread "main"
Vielen Dank!
Ich versuche jetzut schon seit geraumer Zeit mit Hilfe von JAva / JNDI auf ein LDAP zuzugreifen. Bisher blieb ich erfolglos.
Ich habe mit Hilfe eines Buches mir ein bischen Wissen über JNDI verschafft,
LDAP für JAVA Entwickler.
In diesem Buch wird auch ein Zugriff auf ein lokales Ldap Verzeichnis erklärt und demonstriert, was leider bei mir nicht funktioniert.
Ich habe den Anweisungen aus dem Buch so exakt wie es nur möglich ist, folge geleistet. Nur meine Ernte sind Errors....meistens Probleme mit dem Classpath, welche aber normalerweise nicht auftreten dürften.
Frage:
Kann mir einer kurz und knapp einen kleinen Code posten, wo einfach nur mit JNDI eine Connection zu einem LDAP gemacht wird?
oder mir bei der Korrektur der Errors weiterhilft?
hier der Code:
Code:
Context ctx = new InitialContext();
browseRekursiv(ctx, 0);
}
public static final void browseRekursiv(Context ctx, int tiefe)
throws NamingException {
NamingEnumeration enum = ctx.listBindings("");
while (enum.hasMore()) {
Binding b = (Binding) enum.next();
if (b.getObject() instanceof Context) {
Context cur = (Context) b.getObject();
for (int i = 0; i < tiefe * 2; ++i)
System.out.print(' ');
System.out.println(b.getName());
browseRekursiv(cur, tiefe + 1);
} // if
} // while
} // browseRekursiv
Die Properties stehen in der jndi.properties,
der Inhalt:
java.naming.factory.initial=com.sun.jndi.fscontext.FSContextFactory
java.naming.provider.url=file://c:\\LDAP_DB
Die Fehlermeldungen:
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
at javax.naming.directory.InitialDirContext.getURLOrDefaultInitDirCtx(Unknown Source)
at javax.naming.directory.InitialDirContext.getAttributes(Unknown Source)
at javax.naming.directory.InitialDirContext.getAttributes(Unknown Source)
at Connect.main(Connect.java:66)
Exception in thread "main"
Vielen Dank!