无法找到JAX-WS架构http://jax-ws.dev.java.net/spring/servlet.xsd

我正在使用Spring框架实现JAX-WS。

以下是我的Spring applicationContext.xml

 

但是,Eclipse抱怨道:

引用文件包含错误( http://jax-ws.dev.java.net/spring/servlet.xsd )。

经过调查,我找到了URL: http : //jax-ws.dev.java.net/spring/servlet.xsd不存在。 相反,它似乎转移到: http ://jax-ws.java.net/spring/servlet.xsd(您可以在浏览器中打开此链接)

因此,我将http://jax-ws.dev.java.net/spring/servlet.xsd中的 XSD架构URL更新为http://jax-ws.java.net/spring/servlet.xsd

现在我的applicationContext.xml看起来像这样:

  

实际上,通过此更改,Eclipse错误消失了。 问题是在Tomcat 7中启动Web服务后,我得到以下运行时错误:

org.xml.sax.SAXParseException; lineNumber:20; columnNumber:29; schema_reference.4:无法读取模式文档“ http://jax-ws.java.net/spring/servlet.xsd ”,因为1)找不到该文档; 2)文件无法阅读; 3)文档的根元素不是。 at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.warning(ErrorHandlerWrapper.java:99) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:433)

请指教。

非常感谢你。 问候,

您的问题是您将位置从http://jax-ws.dev.java.net/spring/servlet.xsd更改为http://jax-ws.java.net/spring/servlet.xsd 。 即使后者是正确的URL,它也与您的jaxws-spring.jar META-INF / spring.schema文件中定义的不匹配。 该文件应具有以下内容

 http\://jax-ws.dev.java.net/spring/core.xsd=spring-jax-ws-core.xsd http\://jax-ws.dev.java.net/spring/servlet.xsd=spring-jax-ws-servlet.xsd http\://jax-ws.dev.java.net/spring/local-transport.xsd=spring-jax-ws-local-transport.xsd 

Spring使用此映射来搜索类路径中的模式而不是Internet。 这些模式文件位于jaxws-spring.jar文件的根目录下。

请查看注册处理程序和架构

你在你的项目中使用spring吗?我遇到了同样的问题,但当我在我的maven依赖项中包含spring-jaxws问题解决了,实际上,你可以在那个jar中看到META-INF / spring.schemas文件是重新定义XSD位置

可能不是你的情况。 但在这种情况下,请做好清洁并重新打造。 如果两个jar子退出,原因是较旧的弹簧jar和xsd。 希望对其他人有所帮助….一般来说,抛出此exception有很多原因。

资源已经移动,最终配置应该是:

 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://jax-ws.dev.java.net/spring/core http://jax-ws.java.net/spring/core.xsd http://jax-ws.dev.java.net/spring/servlet http://jax-ws.java.net/spring/servlet.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd" default-lazy-init="true">