dha*_*ich 23 eclipse mime json message jersey
在试图弄清楚我的问题后,我终于决定问你如何解决我的问题.我见过不同的人有同样的问题,我尝试了他们所建议做的所有事情,但没有任何帮助我的问题.所以基本上我有一个使用Jersey构建的RESTful服务.对于我的客户端,我想以JSON格式返回一个对象.我阅读了不同的教程,并认为使用jersey-json-1.8库是有意义的.我说的一切我的项目像往常一样,并试图运行它,但我打电话给服务每次(通过GET请求大气压)我收到HTTP错误代码500(内部服务器错误),我的服务器响应,没有邮件正文可以找到作家.如果我正在返回XML,它的工作正常,一切都很棒.我也试过复制jersey-json-1.8.jar到我的Tomcat lib文件夹,因为我必须使用我正在使用的mysql lib这样做,但它也没有帮助.如果你能帮我解决这个问题,我会很高兴的!如果您需要更多信息,请留下评论,我会尽可能快地提供它:)
我的项目设置是:3个不同的包1.我的RESTfulServices 2.我的Java工作,我处理SQL连接等.3.一个包,我存储我需要使用的所有模型,我想以JSON格式返回(在我的例子中为testdrive的路由)
Tomcat Webserver 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
Run Code Online (Sandbox Code Playgroud)
编辑:这是我的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;
}
}
Run Code Online (Sandbox Code Playgroud)
eug*_*gen 47
尝试将Genson库添加到类路径http://owlike.github.io/genson/.它是一个json <> java流和数据绑定api.它与平针织物完美结合,为您提供运行,您需要0配置.Jersey检测到该库位于您的类路径中,并通过委派给Genson来启用json映射.
bor*_*hvm 15
在POM.xml中包含此依赖项并运行Maven - > Update
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.18.1</version>
</dependency>
<dependency>
<groupId>com.owlike</groupId>
<artifactId>genson</artifactId>
<version>0.99</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
nil*_*esh 11
添加以下依赖项解决了我的问题 根据@eugen,我尝试添加Genson依赖,这有助于摆脱异常,但是我的服务器由于某种原因抛出了400个错误的请求.好像Genson无法正确地传输json请求.但是下面的依赖工作正常.希望它能帮助别人,因为这个问题让我疯了!
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<version>2.3.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
50664 次 |
| 最近记录: |