当前位置: 首页 > 面试题库 >

泽西岛:找不到Java类和MIME媒体类型application / json的消息正文编写器

苗冯浩
2023-03-14
问题内容

在尝试找出我的问题之后,我终于决定问您如何解决我的问题。我见过不同的人有相同的问题,我尝试了所有建议他们做的事情,但没有任何帮助解决我的问题。所以基本上我有一个使用Jersey进行构建的RESTful服务。对于我的客户,我想返回JSON格式的对象。我通读了不同的教程,并决定使用jersey-
json-1.8库是有意义的。我像往常一样将所有内容添加到我的项目中,并尝试运行它,但是每次调用服务时(通过get request
atm。),我收到HTTP错误代码500(内部服务器错误),并且服务器响应没有消息正文作家可以找到。如果我要返回XML,它就可以正常工作,并且一切都很好。我也尝试过复制jersey-
json-1.8。jar到我的Tomcat lib文件夹中,因为我必须使用我正在使用的mysql
lib来执行此操作,但它也无济于事。如果您能帮助我使这些工作正常,我将非常高兴!如果您需要更多信息,请发表评论,我们将尽快为您提供:)

我的项目设置是:3个不同的包1.我的RESTfulServices
2.我在其中处理SQL连接的Java工作区等。3.一个包,其中存储了需要使用的所有我想以JSON格式返回的模型(在我的示例中为testdrive的路线)

Tomcat Web服务器IDE:Eclipse我正在使用Maven

无论我尝试如何或以何种方式返回对象,它都将无法正常工作,并且不断收到错误消息:

Mapped exception to response: 500 (Internal Server Error)
javax.ws.rs.WebApplicationException: com.sun.jersey.api.MessageException: A message body writer for Java class com.mykong.models.Teststrecke, and Java type class com.mykong.models.Teststrecke, and MIME media type application/json was not found

编辑:这是我的JSON服务方法

@Path("/hellojson")
public class JSONService {


    @GET
    @Produces(MediaType.APPLICATION_JSON)
    public ArrayList<Route> getJSONMsg()  
    {

        Route ts = new Route();
        ts.setId(1);
        ts.setName("HelloWorld");


        Route ts2 = new Route();
        ts2.setId(2);
        ts2.setName("HelloWorld");


        ArrayList<Route> availRoutes = new ArrayList<Route>();
        availRoutes.add(ts);
        availRoutes.add(ts2);


        return availRoutes;


    }
}

问题答案:

尝试将Genson库添加到您的类路径http://owlike.github.io/genson/中。它是一个json
<>
java流和数据绑定api。它与jersey集成良好,要让您运行,您需要配置0。Jersey会检测到该库在您的类路径中,并通过委派给Genson来启用json映射。



 类似资料:
  • 问题内容: 我正在测试RESTful服务,当我执行RESTful服务时,尽管我的类路径(WEB-INF / lib)中包含以下jar,但是却遇到异常,但我没有使用Maven,而我的JDK版本是1.5。有关此问题的其他问题无助于解决问题。 程式码片段 web.xml 罐子清单 异常堆栈 我该如何解决这个问题? 问题答案: 确保您的项目中没有多个Jersey版本。在您提供的列表中,有3个不同版本(1.

  • 我正在使用jersey客户端调用rest webservice。 我的网络服务正在使用json,所以我需要让json打电话给我的网络服务提供商。 我用下面的方法做这件事。 但是我得到了以下异常: 09:52:01,625错误[[MVC-dispatcher]]servlet MVC-dispatcher的Servlet.service()抛出异常com . sun . jersey . API .

  • 我正在尝试使用Jersey作为框架实现一个小的REST API,原则上代码工作正常,但是当我尝试对哈希表进行“GET”时,我得到以下错误: 这是有问题的一行: 这就是我实现服务的方式: pom公司。xml(maven依赖项) 服务器端配置: 在客户端中注册杰克逊时出错: 新类别: 术语类: 有人能帮我退回地图吗?

  • 我一直在写RESTful Web服务。我使用的技术: 玻璃鱼3(基于Java6) JDK v7 Eclipse EE Kepler 泽西岛(Glassfish的一部分) 我为自定义MediaType创建了自定义POJO: 我的资源方法: 我的邮件正文作者: } 我的服务客户: 根路径: } 当我运行应用程序时,我从我的服务客户端获得以下输出: 我想使用自定义媒体类型和,以便更好地了解RESTful

  • 问题内容: 我正在使用Jersey来构建REST服务,并希望返回XML。 但是我的尝试失败,但有以下异常: javax.ws.rs.WebApplicationException:com.sun.jersey.api.MessageException:Java类java.util.ArrayList和Java类型类java.util.ArrayList和MIME媒体类型text / xml的消息正

  • 我正在使用一个以AngularJS为客户端和泽西Rest WebService的应用程序。我能够通过使用angularJS$http.get()成功获取数据,但我很难将数据发布到服务器。我收到以下异常。 com.sun.jersey.spi.container.ContainerRequestgetEntity SEVERE:未找到Java类型、类dto.BookObject和MIME媒体类型(a