我正在使用AOP而且我遇到了这个我无法修复的错误。我的Spring配置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.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
<bean id="adv1" class="com.aamir.Advice1"/>
<bean id="adv2" class="com.aamir.Advice2"/>
<bean id="p1" class="com.aamir.Person"/>
<bean id="e1" class="com.aamir.Employee"/>
<aop:config>
<aop:aspect id="asp1" ref="adv1">
<aop:pointcut id="pc1" expression="execution(public int com.aamir.Person.*(int, ..))"/>
<aop:before method="executeBeforeMethod" pointcut-ref="pc1"/>
</aop:aspect>
<aop:aspect id="asp2" ref="adv2">
<aop:pointcut id="pc1" expression="execution(* com.aamir.*.*(..))"/>
<aop:pointcut id="pc2" expression="execution(public * com.aamir.Employee.*(..))"/>
<aop:before method="method1" pointcut-ref="pc1"/>
<aop:after method="method2" pointcut-ref="pc1"/>
<aop:after-returning method="method3" returning="obj" pointcut-ref="pc1"/>
<aop:after-throwing method="method4" throwing="e" pointcut-ref="pc1"/>
<aop:before method="method1" pointcut-ref="pc2"/>
</aop:aspect>
</aop:config>
</beans>
我收到错误的行在我的控制台中,如下所示。
线程“main”org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException中的异常:来自类路径资源[beans.xml]的XML文档中的第21行无效;嵌套异常是org.xml.sax.SAXParseException; lineNumber:21; columnNumber:9;元素类型“aop:aspect”必须后跟属性规范,“&gt;”或“/&gt;”。“
答案 0 :(得分:3)
似乎有两个同名的id用于aop:pointcut。
.state('app.single', {
url: "/playlists/:playlistId",
views: {
'menuContent': {
templateUrl: "templates/**<< :playlistId >>**.html",
controller: 'PlaylistCtrl'
}
}
});
重命名id并检查plz。
答案 1 :(得分:1)
这是您上面提供的完整XML文件吗?
如果这是真的,那么你需要在xml文件的末尾添加关闭bean标记,希望这可以解决你的问题。
请进行更改并回复。