Jersey 2.x post调用引发严重错误:未找到媒体类型=应用程序/json的MessageBodyWriter
我试着跟随,但我陷入了一个无法摆脱的例外。请求尚未到达服务器 例外情况 2015年7月9日下午6:59:42 org.glassfish.jersey.message.internal.writeringterceptorexecutor$terminalwriteringterceptor aroundWriteTo 严重:未找到媒体类型=应用程序/json、类型=class com.mcruiseon.airapi.tunnel.common.UserNamePassword、genericType=class com.mcruiseon.airapi.tunnel.common.UserNamePassword的MessageBodyWriter 邮电Jersey 2.x post调用引发严重错误:未找到媒体类型=应用程序/json的MessageBodyWriter,post,http-post,jersey-2.0,Post,Http Post,Jersey 2.0,我试着跟随,但我陷入了一个无法摆脱的例外。请求尚未到达服务器 例外情况 2015年7月9日下午6:59:42 org.glassfish.jersey.message.internal.writeringterceptorexecutor$terminalwriteringterceptor aroundWriteTo 严重:未找到媒体类型=应用程序/json、类型=class com.mcruiseon.airapi.tunnel.common.UserNamePassword、generi
@POST
@Path("search/{origin}/{destination}/{flightSearchType}/{departureDayOfMonth}/{departureMonthOfYear}/{departureYear}/{returnDayOfMonth}/{returnMonthOfYear}/{returnYear}/{cabinClass}/{adultCount}/{childCount}/{infantCount}")
@Consumes({ MediaType.APPLICATION_JSON })
@Produces({ MediaType.APPLICATION_JSON })
public Response search(@PathParam("origin") String origin,
@PathParam("destination") String destination,
@PathParam("flightSearchType") int flightSearchType,
@PathParam("departureDayOfMonth") int departureDayOfMonth,
@PathParam("departureMonthOfYear") int departureMonthOfYear,
@PathParam("departureYear") int depatureYear,
@PathParam("returnDayOfMonth") int returnDayOfMonth,
@PathParam("returnMonthOfYear") int returnMonthOfYear,
@PathParam("returnYear") int returnYear,
@PathParam("cabinClass") int cabinClass,
@PathParam("adultCount") int adultCount,
@PathParam("childCount") int childCount,
@PathParam("infantCount") int infantCount,
JAXBElement<UserNamePassword> userNamePassword) {
编辑
我找到了。坦白地说,我不在乎,我只是想让它工作,所以我很高兴在ResourceConfig或ClientConfig属性中将“jersey.config.workers.legacyOrdering”)设置为true。
。但是在哪里以及如何将这个变量设置为true呢。ClientConfig在哪里
我还将junit代码修改为
ClientConfig config = new ClientConfig();
config.property("jersey.config.workers.legacyOrdering", true);
这也不起作用
ClientConfig config = new ClientConfig();
config.property(MessageProperties.LEGACY_WORKERS_ORDERING, true);
我下载了Genson 1.3以使其正常工作。版本0.94不起作用。是的,Genson的旧版本适用于jersey 1.x,最近的版本适用于jersey 1和jersey 2。
ClientConfig config = new ClientConfig();
config.property("jersey.config.workers.legacyOrdering", true);
ClientConfig config = new ClientConfig();
config.property(MessageProperties.LEGACY_WORKERS_ORDERING, true);