La importación de un LDIF esquema y contenido de LDIF en cada inicio de ApacheDS?
Pregunta
Quiero mis ApacheDS incrustados para poner en marcha con un esquema / contenido fresco cuando corro mis pruebas. He intentado importar un LDIF con estas líneas:
LdifFileLoader ldifLoader = new LdifFileLoader(service.getAdminSession(), "path/to/my/export.ldif");
ldifLoader.execute();
Pero ahora ApacheDS almacena la información en un directorio Servidor de trabajo en el directorio de trabajo actual. Tenía que eliminar manualmente el directorio Servidor de trabajo cada vez y me pregunto si esa es la manera correcta ...
exporta el esquema como LDIF demasiado y quiero importar primero. ¿Puedo importar con LdifFileLoader también? O lo estoy haciendo de manera equivocada en absoluto?
Solución
Uso DirectoryService # DefinirDirectorioDeTrabajo (Archivo) para cambiar el directorio de trabajo.
En su configuración () o tearDown () métodos, a continuación, puede eliminar este directorio.
Otros consejos
Primavera LDAP se puede construir un servidor sobre la marcha para usted y cargarlo con una LDIF en el arranque. El servidor se construye es un servidor ApacheDS.
<security:ldap-server root="dc=example,dc=com" port="33389" ldif="classpath:EmbeddedServerRoot.ldif"/>