严重:找不到媒体类型= application / json的MessageBodyWriter,type = class java.util.ArrayList

时间:2016-01-22 04:29:40

标签: java json web-services jax-rs

我是JAX-RS的新手,我第一次尝试构建简单的API。 我想生成响应为JSON格式。

但是当我运行我的应用程序时,我得到以下错误:

SEVERE: MessageBodyWriter not found for media type=application/json, type=class java.util.ArrayList, genericType=java.util.List<com.fanjavaid.User>.

我在没有Maven的情况下创建我的项目。

这是我的图书馆清单:

aopalliance-repackaged-2.4.0-b31.jar
asm-debug-all-5.0.4.jar
hk2-api-2.4.0-b31.jar
hk2-locator-2.4.0-b31.jar
hk2-utils-2.4.0-b31.jar
javassist-3.18.1-GA.jar
javax.annotation-api-1.2.jar
javax.inject-2.4.0-b31.jar
javax.servlet-api-3.0.1.jar
javax.ws.rs-api-2.0.1.jar
jaxb-api-2.2.7.jar
jersey-client.jar
jersey-common.jar
jersey-container-servlet-core.jar
jersey-container-servlet.jar
jersey-guava-2.22.1.jar
jersey-media-jaxb.jar
jersey-server.jar
org.osgi.core-4.2.0.jar
osgi-resource-locator-1.0.1.jar
persistence-api-1.0.jar
validation-api-1.1.0.Final.jar

这是我的服务类:

@Path("UserService")
public class UserService {
    private UserDao dao;

    public UserService() {
        dao = new UserDaoImpl();
    }

    @GET
    @Path("/users")
    @Produces("application/json")
    public Response getAllUsers() {
        GenericEntity<List<User>> entity = new GenericEntity<List<User>>(dao.fetchAll()){};
        Response response = Response.ok(entity).build();

        return response;
    }
}

如何解决这个问题? 谢谢。

0 个答案:

没有答案