我在尝试创建REST时遇到异常堆栈跟踪
org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure:找不到MessageBodyWriter类型的响应对象:媒体类型的java.lang.Boolean中:应用/八位字节流 在org.jboss.resteasy.core.ServerResponseWriter.writeNomapResponse(ServerResponseWriter.java :67)在org.jboss.resteasy.core.SynchronousDispatcher.writeResponse(SynchronousDispatcher.java:448)在org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:397)在org.jboss.resteasy.core. AsynchronousDispatcher.invoke(AsynchronousDispatcher.java:253)在org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:200)
我曾尝试在计算器外,包括1.确保有罐子"RestEasy的-JAXB提供商-3.0.12.Final.jar"和抛弃提供商2.即使有其中一方,而不是两个3在其他岗位多的建议.改变其他jaxrs jar版本
直到现在我能够得出结论:
问题出在服务器端而不是客户端.客户端只收到500个HTTP错误代码
服务器站点请求到达但响应未被回送
如果你仔细检查错误,我得到的响应找不到'application/octec-stream',即使在服务元数据中我定义了'application/json'.所以我不知道为什么应用程序无法获取json解析器
@Path("/api/ver1.0/lock") public interface LockingService { /** * Interface method to request a single lock. * * @param lockRequest * lockRequest * @return Boolean */ @POST @Path("/request") @Consumes("application/json") Boolean requestLock(LockRequest lockRequest);
除了resteasy jar版本之外,我可以使用相同的代码工作
工作
resteasy-jackson-provider-2.3.1.GA.jar resteasy-jaxb-provider-2.3.1.GA.jar resteasy-jaxrs-2.3.1.GA.jar resteasy-jettison-provider-2.3.1.GA.jar resteasy-multipart-provider-2.3.1.GA.jar resteasy-spring-2.3.1.GA.jar scannotation-1.0.3.jar
不工作
resteasy-jackson-provider-3.0.12.Final.jar resteasy-jaxb-provider-3.0.12.Final.jar resteasy-jaxrs-3.0.12.Final.jar resteasy-multipart-provider-3.0.12.Final.jar resteasy-spring-3.0.12.Final.jar
欢迎任何帮助.