找不到org.glassfish.jersey.internal.inject.Binder类

时间:2019-06-26 12:24:55

标签: java rest tomcat jersey tomcat8

我有一个现有的SOAP Web服务项目,我想对其进行扩展,使其也支持RESTful服务。

当我创建一个空的Web项目并按照使用here的教程进行操作时,一切正常,但是在我现有的项目中,我得到一个错误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 http://localhost:8080/project/rest/UserService/users

调用它时出现错误

我无法在另一个项目中复制它。我尝试使用相同的库和相同的Java EE版本(7.0),但效果很好。

0 个答案:

没有答案