在Eclipse中新建了一個maven項目學習Spring,在 service.xml 中配置 Spring,想要學習‘面向切面的Spring’,service.xml 內容以下:spring
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/shema/aop" xmlns:p="http://www.springframework.org/schema/p" xmlns:c="http://www.springframework.org/schema/c" xsi:schemaLocation=" http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd "> <bean id="audience" class="proxy.Audience" /> <aop:config> <aop:aspect ref="audience"> <aop:around pointcut="execution(** concert.Performance.perform(..))" method="watchPerformance(ProceedingJoinPoint)" /> </aop:aspect> </aop:config> </beans>
結果寫 <aop: ** > 的時候,沒有代碼提示,並且老是出現錯誤提示:maven
Multiple annotations found at this line:
- cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element
'aop:config'.學習
如圖所示:
this
網上搜索解決方案,看到相似的問題是 xsi:schemaLocation 中的 url 沒有配置好。思來想去,多是由於本身在 <beans > 中的url沒有寫正確,就Ctrl+F 搜索‘http://www.springframework.org/schema/’,匹配的字符串就會背景高亮顯示。發現果真是由於 「xmlns:aop="http://www.springframework.org/shema/aop" 沒有寫正確 --- shema 應該是 schema。
改正之後就行了。ヾ(@^▽^@)ノurl