2011-08-04 4 views
0

난 그냥 질문을봄 XML 문제 2 부

Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [ http://www.springframework.org/schema/aop]

내 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:aop="http://www.springframework.org/schema/aop" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
    http://www.springframework.org/schema/aop 
    http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"> 

<bean id="audience" class="springaop.Audience"> 
</bean> 

<bean id="sam" class="springaop.Singer"> 
    <property name="id" value="1"></property> 
</bean> 

<aop:config> 
    <aop:aspect ref="audience"> 

     <aop:before pointcut="* springaop.Singer.perform(..)" 
     method="takeSeats"></aop:before> 

    </aop:aspect> 
</aop:config> 

</beans> 

나는 스프링 3.1을 사용합니다. 0.M2

+0

3.0.5.RELEASE를 사용해보세요. 3.1 마일스톤 빌드는 불안정하고 버그가 있습니다. – skaffman

+0

3.0.5에서 "클래스 경로 리소스 [aop-conf.xml]에서 XML 문서를 구문 분석하는 중 예기치 않은 예외가 발생했습니다. 중첩 예외는 java.lang.NoClassDefFoundError : org/aopalliance/aop/Advice"입니다. –

답변

1

classpath에 spring-aop 이슈가 없으면이 오류가 발생합니다. 또한 해당 항아리에서 META-INF/spring.handlers 항목을 사용할 수 없어도 spring-aop 클래스가 포함 된 경우이를 얻을 수 있습니다. 이 파일은 Spring이 "네임 스페이스 처리기"를 찾는 방식입니다. spring-aop jar의 on은 봄에 "http://www.springframework.org/schema/aop"네임 스페이스를 처리하는 방법을 알려주는 것입니다. 이 문제를 일으킬 수있는 한 가지 방법은 여러 개의 스프링 항아리를 포함하여 뚱뚱한 항아리를 만드는 것입니다. 모든 spring.handlers 파일을 다른 파일 중 하나를 덮어 쓰고 많은 필수 항목을 잃어 버리게됩니다.