Spring xml问题第2部分

时间:2011-08-04 14:58:51

标签: xml spring

我刚问了一个问题:Spring xml problem 我解决了这个问题,但现在又得到了另一个问题:

  

配置问题:无法找到XML架构命名空间的Spring NamespaceHandler [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>

我使用的是Spring 3.1.0.M2

1 个答案:

答案 0 :(得分:1)

如果你的类路径上没有spring-aop工件,你会得到错误。如果你以某种方式包含spring-aop类而没有从那个jar中获得META-INF / spring.handlers条目,你也会得到它。该文件是Spring发现其“命名空间处理程序”的方式。 Spring-aop jar中的on告诉spring如何处理“http://www.springframework.org/schema/aop”命名空间。解决这个问题的一种方法是尝试创建一个包含几个弹簧罐的胖罐。你最终会用其他的一个覆盖所有的spring.handlers文件并丢失很多必要的条目。