java - 找不到类 org.glassfish.jersey.internal.inject.Binder
问题描述
我有一个现有的 SOAP Web 服务项目,我想扩展它以便它也支持 RESTful 服务。
当我创建一个空的 Web 项目并使用此处找到的教程按照说明进行操作时,一切正常,但在我现有的项目中出现错误java.lang.ClassNotFoundException: org.glassfish.jersey.internal.inject.Binder
。我确保将所有库放在 WEB-INF 文件夹中并包含它们,就像我对测试项目所做的那样。
这是我的 web.xml 的一部分:
<servlet>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>Jersey RESTful Application</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>com.rest</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Jersey RESTful Application</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
这是我的 UserService 类:
@Path("/UserService")
public class UserService {
User user = new User();
@GET
@Path("/users")
@Produces(MediaType.TEXT_PLAIN)
public String getUsers() {
return user.getHello();
}
}
当我尝试使用带有 URL 的 Postman 调用它时出现错误:http://localhost:8080/project/rest/UserService/users
我无法在另一个项目中重现它。我尝试使用相同的库和相同的 Java EE 版本(7.0),它工作得很好。
解决方案
推荐阅读
- wpf - 如何格式化消息以使其显示在 Visual Studio 的“XAML 绑定失败”-Toolwindow 中?
- python - Python - 无法并行运行多个查询
- c++ - c++ 中是否有任何解决方法来模拟/从最终类派生
- r - 字符串按管道拆分并放入列中
- database - 如何更改雪花中的虚拟列
- python - 有没有办法在线性时间内在网格上运行 BFS?即关于列数和行数 - O(rows*cols)
- javascript - 在 JavaScript 事件上调用谷歌应用脚本用户定义的方法
- python - Pyspark levenshtein Join 卡在同一个阶段
- javascript - 如何禁用material-ui cardActionArea的默认悬停和点击效果
- python - 在python中添加具有重复值的数字