Spring 3.0: Неспособный определить местоположение Spring NamespaceHandler для пространства имен XML-схемы

Моя установка довольно проста: у Меня есть веб-фронтенд, бэкенд соединен проводом пружиной.

Я использую AOP для добавления уровня безопасности на моих rpc сервисах.

Это - вся польза, за исключением того, что веб-приложение прерывается на запуске:

  [java] SEVERE: Context initialization failed
     [java] org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/aop]
     [java] Offending resource: ServletContext resource [/WEB-INF/gwthandler-servlet.xml]

Вот отрывок из моего xml файла конфигурации:

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">
    <aop:config>
        <aop:aspect id="security" ref="securityAspect" >
            <aop:pointcut id="securedServices" expression="@annotation(com.fb.boog.common.aspects.Secured)"/>
            <aop:before method="checkSecurity" pointcut-ref="securedServices"/>
        </aop:aspect>
    </aop:config>

Я перечитал по Интернету, что это может быть мой classloading ядро проблемы. Сомнительный, с тех пор вот мой каталог WEB-INF/lib:

./WEB-INF/lib
./WEB-INF/lib/aopalliance-alpha1.jar
./WEB-INF/lib/aspectj-1.6.6.jar
./WEB-INF/lib/commons-collections.jar
./WEB-INF/lib/commons-logging.jar
./WEB-INF/lib/ehcache-core-1.7.0.jar
./WEB-INF/lib/ejb3-persistence.jar
./WEB-INF/lib/hibernate
./WEB-INF/lib/hibernate/antlr.jar
./WEB-INF/lib/hibernate/asm.jar
./WEB-INF/lib/hibernate/bsh-2.0b1.jar
./WEB-INF/lib/hibernate/cglib.jar
./WEB-INF/lib/hibernate/dom4j.jar
./WEB-INF/lib/hibernate/freemarker.jar
./WEB-INF/lib/hibernate/hibernate-annotations.jar
./WEB-INF/lib/hibernate/hibernate-shards.jar
./WEB-INF/lib/hibernate/hibernate-tools.jar
./WEB-INF/lib/hibernate/hibernate.jar
./WEB-INF/lib/hibernate/jtidy-r8-20060801.jar
./WEB-INF/lib/jabsorb
./WEB-INF/lib/jabsorb/jabsorb-1.3.1.jar
./WEB-INF/lib/jta.jar
./WEB-INF/lib/jyaml-1.3.jar
./WEB-INF/lib/postgresql-8.4-701.jdbc4.jar
./WEB-INF/lib/sjsxp.jar
./WEB-INF/lib/spring
./WEB-INF/lib/spring/org.springframework.aop-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.asm-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.aspects-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.beans-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.context-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.context.support-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.core-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.expression-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.instrument-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.instrument.tomcat-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.jdbc-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.jms-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.orm-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.oxm-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.test-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.transaction-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.web-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.web.portlet-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.web.servlet-3.0.0.RELEASE.jar
./WEB-INF/lib/spring/org.springframework.web.struts-3.0.0.RELEASE.jar
./WEB-INF/lib/testng-5.11-jdk15.jar
./WEB-INF/web.xml
38
задан skaffman 21 December 2009 в 08:43
поделиться

5 ответов

Вы пытались поместить все свои jar-файлы прямо в каталог WEB-INF / lib , а не в его подкаталог?

Нет WEB-INF /lib/spring/org.springframework.aop-3.0.0.RELEASE.jar, просто WEB-INF / lib / org.springframework.aop-3.0.0.RELEASE.jar

То же самое с остальные банки.

9
ответ дан 27 November 2019 в 03:22
поделиться

Какую IDE (если есть) вы используете? Это происходит, когда вы работаете в среде IDE или только при развертывании? Если это развертывание, это может быть связано с тем, что какой бы механизм развертывания вы ни использовали - сборка maven, создающая один JAR с зависимостями, является известным виновником - сворачивает все ваши JAR в один каталог и схему Spring и файлы-обработчики перезаписывают друг друга.

12
ответ дан 27 November 2019 в 03:22
поделиться

На случай, если кто-то еще столкнется с этой проблемой, я только что использовал Eclipse; запуск проекта с помощью действия правой кнопки мыши. Эта ошибка произошла в представлении J2EE, но НЕ возникла в представлении Java. Не уверен - предполагая что-то с добавлением библиотек в правильный каталог lib.

Я также использую проект Maven, позволяющий m2eclipse управлять зависимостями.

0
ответ дан 27 November 2019 в 03:22
поделиться

http://maven.apache.org/plugins/maven-shade-plugin/examples/resource-transformers.html

Я столкнулся с похожей проблемой, используя maven-shade-plugin. Я нашел решение своих проблем на их странице примера выше.

16
ответ дан 27 November 2019 в 03:22
поделиться

У меня такая же проблема с spring 3.0.2 и spring-beans-3.0.xsd.

Мое решение:

Создайте файл META-INF / spring.schemas в исходной папке и скопируйте все необходимые определения. Создайте также spring.handler.

Я считаю, что класс PluggableSchemaResolver работает некорректно.

http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/beans/factory/xml/PluggableSchemaResolver.html

из документации javadoc:

"Автор по умолчанию этот класс будет искать файлы сопоставления в пути к классам, используя шаблон: META-INF / spring.schemas, позволяющий одновременному существованию нескольких файлов в пути к классам »

, но в моем случае этот класс только читает первая весна. схемы найдены.

Греттингс. pacovr

0
ответ дан 27 November 2019 в 03:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: