Получение "Невозможно найти Spring NamespaceHandler для пространства имен схемы XML [http://www.springframework.org/schema/security]" с весны 4
Я модернизирую spring
версии нашего OSGi
проект до весны 4.2.х.
Я удалил зависимости Spring DM и добавил зависимости Gemini Blueprint (org.eclipse.gemini.blueprint.core
, org.eclipse.gemini.blueprint.extender
, org.eclipse.gemini.blueprint.io
) и те находятся в состоянии ACTIVE на сервере Virgo RT.
я добавил spring-security-config
зависимость, и это также в состоянии ACTIVE.
Но я столкнулся со следующей проблемой
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: проблема конфигурации: невозможно найти Spring NamespaceHandler для пространства имен схемы XML [ http://www.springframework.org/schema/security] ресурс-нарушитель: URL [bundleentry://157.fwk1212103909/META-INF/ весна / ApplicationContext-security.xml]
мой файл applicationContext-security.xml такой
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:security="http://www.springframework.org/schema/security"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security.xsd">
<security:global-method-security pre-post-annotations="enabled" run-as-manager-ref="runAsManager"
secured-annotations="enabled">
<security:expression-handler ref="expressionHandler" />
</security:global-method-security>
...
</beans>
Я использовал xsd
с версиями. тот же результат.
Любая идея, что вызывает эту проблему?
2 ответа
Мне пришлось добавить следующую строку в файл META-INF/spring.handlers в моем проекте.
http\://www.springframework.org/schema/security=org.springframework.security.config.SecurityNamespaceHandler
Было бы полезно, если бы вы указали, какую версию Virgo вы используете. Знаете ли вы о том, что Дева 3.7.0 включает в себя Spring 4?