在引用的.jar中部署Jersey Web服务

时间:2013-09-05 06:44:31

标签: java eclipse web-services jar jersey

我已经创建了一个带有一些Jersey Web服务的.jar,我想在其他项目中导入.jar。这些Web服务的工作方式类似于本地代码的处理程序/代理,以便与远程服务提供者进行链接。

因此,我在项目中导入.jar文档并配置web.xml,如下所示:

<servlet>
  <servlet-name>Services</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>com.package.for.services.in.current.project, com.package.for.services.in.jar</param-value>
  </init-param>
</servlet>
<servlet-mapping>
  <servlet-name>Services</servlet-name>
  <url-pattern>/s/*</url-pattern>
</servlet-mapping>

但是当我运行项目时,找不到com.package.for.services.in.jar中指定的Web服务。

.jar文档位于构建路径中。我究竟做错了什么?是不是可以从外部库运行Web服务?

提前致谢。

1 个答案:

答案 0 :(得分:0)

我在这篇文章中找到了答案:Jersey REST The ResourceConfig instance does not contain any root resource classes

PackagesResourceConfig类依赖于具有包名称的目录,以便在其中查找类。我回到了Eclipse,在“导出...&gt; Jar”对话框的底部找到了一个选项,用于“添加目录条目。”我打开了它,再次导出jar,然后扫描找到我的资源类。您需要在构建环境中找到一些类似的选项。