Sto provando a eseguire un ApacheDS incorporato nella mia applicazione. Dopo aver letto http://directory.apache.org/apacheds/1.5/41-embedding-apacheds-into-an-application.html costruisco questo:Esecuzione di Apache DS incorporato nella mia applicazione
public void startDirectoryService() throws Exception {
service = new DefaultDirectoryService();
service.getChangeLog().setEnabled(false);
Partition apachePartition = addPartition("apache", "dc=apache,dc=org");
addIndex(apachePartition, "objectClass", "ou", "uid");
service.startup();
// Inject the apache root entry if it does not already exist
try
{
service.getAdminSession().lookup(apachePartition.getSuffixDn());
}
catch (LdapNameNotFoundException lnnfe)
{
LdapDN dnApache = new LdapDN("dc=Apache,dc=Org");
ServerEntry entryApache = service.newEntry(dnApache);
entryApache.add("objectClass", "top", "domain", "extensibleObject");
entryApache.add("dc", "Apache");
service.getAdminSession().add(entryApache);
}
}
Ma non riesco a connettersi al server dopo l'esecuzione. Qual è la porta di default? O mi sta sfuggendo qualcosa?
ecco la soluzione:
service = new DefaultDirectoryService();
service.getChangeLog().setEnabled(false);
Partition apachePartition = addPartition("apache", "dc=apache,dc=org");
LdapServer ldapService = new LdapServer();
ldapService.setTransports(new TcpTransport(389));
ldapService.setDirectoryService(service);
service.startup();
ldapService.start();
Ma è la porta predefinita per Apach eDS anche? E ApacheDS sta creando un accesso LDAP con il codice sopra ...? – cringe
Io uso Apache Directory Studio per navigare su LDAP, ma non ho familiarità con l'esecuzione di un ApacheDS incorporato. Ho appena risposto alla tua domanda sulla porta predefinita per LDAP. – JuanZe
Ho scaricato il codice di esempio e le librerie ed eseguito da Eclipse. L'output mostra: log4j: WARN Non è stato possibile trovare appendici per il logger (org.apache.directory.server.schema.registries.DefaultNormalizerRegistry). log4j: WARN Si prega di inizializzare correttamente il sistema log4j. ingresso Trovato: ServerEntry dn [n]: dc = Apache, dc = Org objectClass: extensibleObject objectClass: dominio objectClass: top dc: Apache – JuanZe