by35095 2016-01-11 08:21 采纳率: 0%
浏览 2653

jersey@Produces类型转换问题

问题描述:
@Produces(MediaType.APPLICATION_JSON) 报出
严重: Mapped exception to response: 500 (Internal Server Error)
javax.ws.rs.WebApplicationException: com.sun.jersey.api.MessageException: A message body writer for Java class java.lang.Integer, and Java type class java.lang.Integer, and MIME media type application/json was not found.

简单分析:jersey框架格式转换功能报出异常,无法完成json转换。可能受某个环境配置影响,在其他环境下没有该问题。
具体原因,在执行到jar包的某个类型匹配功能的class文件时,出现问题。具体如下:
private MessageBodyWriter _getMessageBodyWriter(Class c, Type t,
Annotation[] as,
MediaType mediaType, MediaType lookup,
Map> providers) {
List writers = providers.get(lookup);
if (writers == null)
return null;
for (MessageBodyWriter p : writers) {
if (p.isWriteable(c, t, as, mediaType)) {
return p;
}
}

    return null;
}
    即 匹配成功,执行return p时,无法退出循环,返回p。直到最后执行return null,导致问题
  • 写回答

1条回答 默认 最新

  • threenewbee 2016-01-20 20:41
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算