2009-10-15 13 views
4

Я хочу, чтобы мой встроенный ApacheDS запускал новую схему/содержимое, когда я запускал свои тесты. Я пытался импортировать LDIF с этой линии:Импорт схемы LDIF и содержимого LDIF при каждом запуске ApacheDS?

LdifFileLoader ldifLoader = new LdifFileLoader(service.getAdminSession(), "path/to/my/export.ldif"); 
    ldifLoader.execute(); 

Но теперь ApacheDS хранит информацию в каталоге сервера работы в текущем рабочем каталоге. Мне пришлось вручную удалить каталог server-work каждый раз, и мне интересно, правильно ли это ...

Я экспортировал схему как LDIF, и я хочу сначала ее импортировать. Могу ли я импортировать его с LdifFileLoader тоже? Или я делаю это неправильно?

ответ

4

Используйте DirectoryService # setWorkingDirectory (File), чтобы изменить рабочий каталог.

В методах setUp() или tearDown() вы можете удалить этот каталог.

3

Spring LDAP может создавать сервер на лету для вас и загружать его с помощью LDIF при запуске. Сервер, который он создает, является сервером ApacheDS.

<security:ldap-server root="dc=example,dc=com" port="33389" ldif="classpath:EmbeddedServerRoot.ldif"/>