Witam, zaczynam dopiero prace z LDAP, korzystam z ApacheDirectoryStudio. utworzyłem nowy LdapServer oraz zaimportowałem gotowy plik LDIF. Chce sprobowac wykonywac rozne operacje jednak program rzuca wyjątki z którymi nie wiem jak sobie poradzić, nigdzie nie mogę znaleŹĆ żadnych informacji na ten temat. Czy ma ktoś jakiś pomysł?
Tworzę sobię prostą klasę i chcę np wyświetlic jakies dane:
import java.util.Hashtable;
import javax.naming.Binding;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
public class ContextExample {
public static void main(String[] args) throws NamingException {
Hashtable<String,String> env = new Hashtable<String, String>();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory");
env.put(Context.PROVIDER_URL, "ldap://localhost:10389/o=jEdu");
DirContext context = new InitialDirContext(env);
NamingEnumeration<Binding> enumeration = context.listBindings("");
while(enumeration.hasMore()) {
System.out.println(enumeration.next().getName());
}
}
}
A tutaj błędy:
Exception in thread "main" javax.naming.InvalidNameException: ldap://localhost:10389/o=jEdu [Root exception is java.net.MalformedURLException: unknown protocol: ldap]
at com.sun.jndi.fscontext.FSContextFactory.getFileNameFromURLString(FSContextFactory.java:119)
at com.sun.jndi.fscontext.RefFSContextFactory.createContext(RefFSContextFactory.java:41)
at com.sun.jndi.fscontext.RefFSContextFactory.createContextAux(RefFSContextFactory.java:47)
at com.sun.jndi.fscontext.FSContextFactory.getInitialContext(FSContextFactory.java:49)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:684)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:313)
at javax.naming.InitialContext.init(InitialContext.java:244)
at javax.naming.InitialContext.<init>(InitialContext.java:216)
at javax.naming.directory.InitialDirContext.<init>(InitialDirContext.java:101)
at ContextExample.main(ContextExample.java:20)
Caused by: java.net.MalformedURLException: unknown protocol: ldap
at java.net.URL.<init>(URL.java:593)
at java.net.URL.<init>(URL.java:483)
at java.net.URL.<init>(URL.java:432)
at com.sun.jndi.fscontext.FSContextFactory.getFileNameFromURLString(FSContextFactory.java:117)
... 9 more