ClassNotFoundException: DirectoryService с apacheds-все уже включены

В моем приложении Spring Boot реализована аутентификация LDAP. Добавлены следующие зависимости:

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-security</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-ldap</artifactId>
    </dependency>
    <dependency>
        <groupId>org.apache.directory.server</groupId>
        <artifactId>apacheds-all</artifactId>
    </dependency>

Однако я все еще получаю следующее ClassNotFoundException:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springSecurityFilterChain'
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [javax.servlet.Filter]
Caused by: java.lang.NoClassDefFoundError: org/apache/directory/server/core/DirectoryService
Caused by: java.lang.ClassNotFoundException: org.apache.directory.server.core.DirectoryService

Мое дерево зависимостей maven четко показывает apacheds-all успешно добавлено.

Почему я все еще получаю эту ошибку?

1 ответ

Решение

Spring Security не поддерживает Apache DS 2.0. Вместо этого вам нужно использовать 1.5.5. Также обратите внимание, что более поздние версии 1.5.x не поддерживаются из-за критических изменений API.

Другие вопросы по тегам