1

我将 Jersey 资源类作为 JAR 文件捆绑在一个更大的 WAR 中,该文件现在位于 Websphere Application Server 上的 WEB-INF/lib 文件夹下。我有正确的 web.xml 条目(WEB-INF/web.xml),但仍在服务器上,扫描似乎无法查找捆绑为 JAR 的资源类。我正在查看一些线程,建议不要将资源捆绑为 JAR,而是在 /WEB-INF/classes 下单独加载类。

<servlet-name>Jersey REST Service</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
 <init-param>
        <param-name>com.sun.jersey.config.property.packages</param-name>
         <param-value>blah.blah.blah</param-value>
 </init-param>
 </servlet>

com.sun.jersey.api.container.ContainerException:ResourceConfig 实例不包含任何根资源类。在 com.sun.jersey.server.impl.application.WebApplicationImpl.processRootResources(WebApplicationImpl.java:1064)


4

2 回答 2

2

Rohit 的博客文章中概述了有关特定版本 WebSphere 的各种球衣问题的问题,您能看看那里有什么对您有帮助吗?

http://wasdynacache.blogspot.com/2011/08/jax-rs-implementations-in-websphere.html

于 2012-05-16T00:42:57.853 回答
0

将类放在 JAR 和 WEB-INF/classes 中没有区别。您的包名称在 web.xml 中是错误的,或者您的 web.xml 中的其他内容配置不正确,或者您的资源类没有正确注释(或者,可能是一些 WebSphere 魔鬼在起作用——我'我自己从未使用过它,但我听说过非常奇怪的类路径问题)。如果您显示资源类、完整的 web.xml 以及更多有关错误的日志,那么有人可能会指出出了什么问题。

于 2012-05-15T19:42:04.220 回答