Jpa JAX RS 500错误

Jpa JAX RS 500错误,jpa,Jpa,我有一个非常简单的服务,返回500个错误-以下是错误的详细信息: [EL Info]:2013-11-01 11:09:05.61-ServerSession741529784-EclipseLink,版本:Eclipse持久性服务-2.3.2.v20111125-r10461 [EL Info]:2013-11-01 11:09:06.452-ServerSession741529784-file:/C:/Users/Fred/workspace/.metadata/.plugins/org.

我有一个非常简单的服务,返回500个错误-以下是错误的详细信息:

[EL Info]:2013-11-01 11:09:05.61-ServerSession741529784-EclipseLink,版本:Eclipse持久性服务-2.3.2.v20111125-r10461

[EL Info]:2013-11-01 11:09:06.452-ServerSession741529784-file:/C:/Users/Fred/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/cheese-ws/WEB-INF/lib/cheese-jpa.jar\u cheese登录成功

34442[http-bio-8080-exec-1]错误org.apache.wink.server.internal.handlers.FlushResultHandler-系统找不到javax.ws.rs.ext.MessageBodyWriter或用于java.util.Vector类型和application/json mediaType的DataSourceProvider类。确保JAX-rs应用程序中存在指定类型和媒体类型的javax.ws.rs.ext.MessageBodyWriter

34446[http-bio-8080-exec-1]INFO org.apache.wink.server.internal.RequestProcessor-调用处理程序链期间发生以下错误:WebApplicationException 500-处理发送到的GET请求时出现内部服务器错误,消息为“null”

代码非常简单,与其他工作正常的服务非常相似:

公共类学生教师通讯服务扩展基本服务{

@GET
@Path("classroomId/{classroomId}/studentId/{studentId}")

@Produces(MediaType.APPLICATION_JSON)

public List<ClassroomStudentCommunication> getCandidatesAsJson(@PathParam("classroomId") int classroomId, @PathParam("studentId") int studentId) {

    EntityManager em = createEM();

    TypedQuery<ClassroomStudentCommunication> query;

    if(studentId==0) {

        query = em.createQuery("SELECT csc FROM ClassroomStudentCommunication csc where csc.classroomId = :classroomId ORDER BY csc.threadOrder", ClassroomStudentCommunication.class);
        query.setParameter("classroomId", classroomId);

        List <ClassroomStudentCommunication> classCommunication = query.getResultList();

        return classCommunication;

有什么想法吗?

这似乎是一个Rest问题,而不是JPA问题。 如果您碰巧使用Maven并使用原型或IDE生成项目,那么值得检查生成的pom.xml。默认情况下,可以在pom.xml中关闭JSON支持

例如,如果您使用Jersey,并且您的项目是使用Jersey quickstart webapp原型生成的,那么您应该在pom.xml中手动取消注释以下部分:

<!-- uncomment this to get JSON support
<dependency>
    <groupId>org.glassfish.jersey.media</groupId>
    <artifactId>jersey-media-moxy</artifactId>
</dependency>
-->

您是否使用Maven?如果是,请向我们展示pom.xml。通过删除服务器并将其重新添加,解决了我的问题。