未找到提供程序类:运行REST示例应用程序时

未找到提供程序类:运行REST示例应用程序时,rest,jersey,Rest,Jersey,我试过了。但是,由于我对这方面还不太熟悉,所以我无法理解这个问题。我附上了几个截图,以了解我现在面临的问题 @Path("/emp") public class EmployeeService { @GET @Path("/emp/{empID}") @Produces(MediaType.APPLICATION_XML) public Employee getEmployee(@PathParam(value = "empID") String empID) { Employee e

我试过了。但是,由于我对这方面还不太熟悉,所以我无法理解这个问题。我附上了几个截图,以了解我现在面临的问题

@Path("/emp")
public class EmployeeService {

@GET
@Path("/emp/{empID}")
@Produces(MediaType.APPLICATION_XML)
public Employee getEmployee(@PathParam(value = "empID") String empID) {
    Employee employee = new Employee();
    employee.setEmailId(empID);
    employee.setName("Rony John");
    employee.setEmailId("rony.java@gmail.com");
    return employee;
}

@POST
@Path("/create")
@Consumes(MediaType.APPLICATION_XML)
@Produces(MediaType.APPLICATION_XML)
public Employee createEmployee(Employee employee) {
    // Create logic
    return employee;

}

@POST
@Path("/update")
@Consumes(MediaType.APPLICATION_XML)
@Produces(MediaType.APPLICATION_XML)
public Employee updateEmployee(Employee employee) {
    employee.setName(employee.getName() + " updated");
    return employee;
}

@DELETE
@Path("/delete/{empID}")
public Response deleteEmployee(@PathParam(value = "empID") String empID) {
    return Response.status(200)
            .entity("Employee with " + empID + " is deleted successfully.")
            .build();

}


}

缺少供应商与此无关,只是意味着你没有供应商

您有一个
index.jsp
,但是如果您在上下文根(/)映射了Jersey筛选器,它正确地说那里没有资源-根据您的屏幕截图,您只有一个资源,从
/emp
开始,它有用于更深路径的CRUD操作的子资源

编辑:再看一眼,您的
index.jsp
是WEB-INF格式的。我认为这不应该基于这样一个事实,即您似乎在试图收集一个简单的示例


那么,您希望在
/JerseyRESTCRUD/
上看到什么?

您的
员工服务
课程是什么样子的?有什么作用吗?您希望在上看到什么?我刚刚将index.html放在WebContent文件夹中。我仍然不知道这些URL是如何工作的。您的web应用程序是JerseyRESTCRUD,所以这就是应用程序上下文。一切都将与此相关。因此,当您使用@Path
emp
创建EmployeeService时,它位于/JerseyRESTCRUD/emp——然后该类中的每个方法都附加了@Path,例如
/JerseyRESTCRUD/emp/update
。当一个请求出现时,它必须以某种方式进行处理——其中之一就是Jersey,它将查看它的资源和@path,看看是否有匹配项。您也在使用JSP,因此有一个servlet(在WebContent中)可以查找匹配项。