Spring Web服务抛出异常

时间:2012-02-15 07:32:08

标签: java web-services spring tomcat servletexception

我正在做这个链接的春天网络服务示例(http://justcompiled.blogspot.in/2010/09/building-web-service-with-spring-ws.html),我得到了例外。

成功运行此项目的任何建议。

我的项目配置:

  

工具:Eclilpse Indigo,

     

服务器:Tomcat 7。

     

Java:JDK,JRE 1.6

     

部署:Weapps(在我的项目中)

我的例外:

HTTP状态500 -

输入例外报告

消息

description服务器遇到内部错误(),导致无法完成此请求。

例外

javax.servlet.ServletException: Servlet.init() for servlet spring-ws threw exception
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:269)
    org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
    org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:300)
    java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    java.lang.Thread.run(Unknown Source)
root cause

java.lang.NoSuchFieldError: APPLICATION_CONTEXT_ID_PREFIX
    org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:431)
    org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:459)
    org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:340)

3 个答案:

答案 0 :(得分:2)

我的项目中遇到了同样的问题。这个问题的根本原因是你必须有两个版本的spring。您可以在存储库文件夹(org \ springframework \ spring-web)或(org \ springframework \ spring-webmvc)中检查相同的内容。您可以从那里删除一个版本。我在同一工作区打开了其他项目,指的是其他版本的spring。当我关闭其他项目并清理和构建时,这解决了我的问题。

由于 卡皮尔

答案 1 :(得分:1)

答案 2 :(得分:0)

我认为,你的类路径中有较旧版本的spring jar(2.5)。它可以在您的pom中明确定义(如果您的项目是maven项目),或者某些其他框架可以依赖于这些并自动添加它们。使用maven,你可以看到更多:

$ mvn dependency:tree 

显示项目中的所有依赖项。只需从类路径中删除这些jar(使用排除http://maven.apache.org/pom.html#Exclusions),然后重试。