【问题标题】:RESTEasy 3 broken with Spring 4.0RESTEasy 3 被 Spring 4.0 打破
【发布时间】:2014-02-11 07:12:27
【问题描述】:

我正在使用 Spring 4、Resteasy 3.0.6 和 Tomcat 7

Tomcat 启动正常,但我得到所有 REST 端点的 404。

我想我遇到的正是这里描述的: https://issues.jboss.org/browse/RESTEASY-1012

我创建了那个自定义类并更新了 web.xml <listener> <listener-class>com.example.CustomContextLoaderListener</listener-class> </listener>

但是现在我得到了这个异常并且 Tomcat 无法启动

SEVERE: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].Stand ardContext[]] at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:188) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.ja va:1123) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java :800) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase. java:1559) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase. java:1549) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor. java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor .java:615) at java.lang.Thread.run(Thread.java:744) Caused by: org.apache.catalina.LifecycleException: Failed to start component [St andardEngine[Tomcat].StandardHost[localhost].StandardContext[]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) ... 6 more Caused by: java.lang.ClassCastException: org.springframework.web.SpringServletCo ntainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer at org.apache.catalina.startup.ContextConfig.getServletContainerInitiali zer(ContextConfig.java:1661) at org.apache.catalina.startup.ContextConfig.processServletContainerInit ializers(ContextConfig.java:1569)

任何帮助将不胜感激。谢谢

【问题讨论】:

    标签: spring resteasy


    【解决方案1】:

    回答我自己的问题。问题是 javax-servlet 是一个编译依赖项,所以我不得不将其范围更改为提供,因为这会导致与 Tomcat 冲突(我使用的是 Maven)

    【讨论】:

    • 您在某处发布了要点或工作代码吗?我正在尝试让 Spring Boot 与 RESTEasy 一起工作,但我不知道如何让它工作。 (Spring 3.x 没问题)
    • @jett 看看我链接的票,里面有所有的细节issues.jboss.org/browse/RESTEASY-1012
    • 感谢您的指出。我实际上在 Jira 问题上发帖,谢天谢地,发帖人回复了一个详细的例子。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-03
    • 2015-07-31
    • 2022-01-06
    • 2017-10-30
    • 2011-06-20
    • 2017-11-24
    相关资源
    最近更新 更多