使用jersey运行时异常 - java.lang.AbstractMethodError

时间:2013-02-19 10:03:08

标签: web-services jersey jax-rs

我正在尝试使用Jersey实现来执行在tomcat上部署的RESTful Web服务。

以下是资源类

@Path( “/休​​息”) 公共类PatientResource {

PatientService patientService;

@GET
@Path("/patient/{patientId}")
@Produces(MediaType.APPLICATION_JSON)
public Patient getPatientDetails(@PathParam("patientId") String patientId) {
    //return patientService.getPatientDetails(patientId);
    return new PatientService().getPatientDetails(patientId);
}

@GET
@Path("/patients")
@Produces(MediaType.APPLICATION_JSON)
public PatientData<Patient> getAllPatients() {
    //return patientService.getAllPatients();
    return new PatientService().getAllPatients();
}

}

我已经在web.xml中创建了必要的条目,并且所有必需的jar都可以在classpath中使用,但是当在tomcat上启动应用程序并且我在浏览器中输入URL时,我得到以下异常

[Servlet执行引发异常]有根本原因 java.lang.AbstractMethodError     at org.codehaus.jackson.map.AnnotationIntrospector $ Pair.findSerializer(AnnotationIntrospector.java:1148) at org.codehaus.jackson.map.ser.BasicSerializerFactory.findSerializerFromAnnotation(BasicSerializerFactory.java:367)     在org.codehaus.jackson.map.ser.BeanSerializerFactory.createSerializer(BeanSerializerFactory.java:252)     在org.codehaus.jackson.map.ser.StdSerializerProvider._createUntypedSerializer(StdSerializerProvider.java:782)

知道怎么解决吗?

1 个答案:

答案 0 :(得分:2)

您在运行时使用的Jersey和Jackson版本可能存在不一致。

你的libs版本是什么?