EclipseでSpring's Schema Based AOP Supportを使用しようとしていて、Tomcatで設定を読み込もうとするとエラーが発生します。Tomcatがbeans.xmlを読み込んで読み込むときにSpring AOPのXMLスキーマが正しく読み込まれないのです
09:17:59,515 WARN XmlBeanDefinitionReader:47 - Ignored XML validation warning org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document 'http://www.springframework.org/schema/aop/spring-aop-2.5.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not .
が続く:
SEVERE: StandardWrapper.Throwable org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 39 in XML document from /WEB-INF/beans.xml is invalid; nested exception is org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'aop:config'.
Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'aop:config'.
何のEclipseでエラーとオートコンプリートの作品は、私はこのエラーを取得するEclipseにプロジェクトをロードしようとただしたときに、AOPの名前空間に正しくありません
これに基づいて、Tomcatがbeans.xmlファイルを解析して<aop:config>
要素が認識されなくなると、スキーマが読み取られていないようです。
エラーのいずれかの可能性のあるソースを試してみて、削除するSpring websiteから
<?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:jaxws="http://cxf.apache.org/jaxws"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">
<!--import resource="classpath:META-INF/cxf/cxf.xml" /-->
<!--import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" /-->
<!--import resource="classpath:META-INF/cxf/cxf-servlet.xml" /-->
<!-- NOTE: endpointName attribute maps to wsdl:[email protected] & should
be the same as the portName attribute
in the @WebService annotation on the IWebServiceImpl class -->
<!-- NOTE: serviceName attribute maps to wsdl:[email protected] & should be
the same as the serviceName attribute in the @WebService
annotation on the ASDIWebServiceImpl class -->
<!-- NOTE: address attribute is the actual URL of the web service
(relative to web app location) -->
<jaxws:endpoint
xmlns:tns="http://iwebservices.ourdomain/"
id="iwebservices"
implementor="ourdomain.iwebservices.IWebServiceImpl"
endpointName="tns:IWebServiceImplPort"
serviceName="tns:IWebService"
address="/I"
wsdlLocation="wsdl/I.wsdl">
<!-- To have CXF auto-generate WSDL on the fly, comment out the above wsdl
attribute -->
<jaxws:features>
<bean class="org.apache.cxf.feature.LoggingFeature" />
</jaxws:features>
</jaxws:endpoint>
<aop:config>
<aop:aspect id="myAspect" ref="aBean">
</aop:aspect>
</aop:config>
</beans>
私beans.xml
ファイル内<aop:config>
要素をコピー&ペーストであることができ、誰:
次のように私のbeans.xmlファイルがありますこのエラーがなぜ発生しているのか、それを修正するために何ができるのかについては何かを明らかにしていますか?
'http:// www.springframework.org/schema/aop/spring-aop-2.5.xsd'の代わりに' http:// www.springframework.org/schema/aop/spring-aop.xsd'を試してください。それが違いを生むかどうかを確認してください。 – skaffman
'http:// www.springframework.org/schema/aop/spring-aop-2.5.xsd'の代わりに' http:// www.springframework.org/schema/aop/spring-aop.xsd'を試しました:Made違いはありません。同じエラーが発生しました – chrisbunney
書式設定org.life.javaを改善していただきありがとうございます。私は例外をより読みやすくするために何をすべきかと思いました。 – chrisbunney