NoMessageBodyWriterFoundFailure:找不到响应对象的MessageBodyWriter

时间:2015-12-26 23:26:05

标签: java rest java-ee jax-rs resteasy

尝试创建REST时会遇到异常堆栈跟踪

  

org.jboss.resteasy.core.NoMessageBodyWriterFoundFailure:找不到类型的响应对象的MessageBodyWriter:媒体类型的java.lang.Boolean: application / octet-stream           在org.jboss.resteasy.core.ServerResponseWriter.writeNomapResponse(ServerResponseWriter.java:67)           at 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)

我在stackoverflow和外部的其他帖子中尝试了多个建议,包括  1.确保有'resteasy-jaxb-provider-3.0.12.Final.jar'和抛弃提供商的罐子  即使有其中任何一个而不是两个  3.改变其他jaxrs jar版本

直到现在我能够得出结论:

  1. 问题出在服务器端而不是客户端。客户端 只需收到500个HTTP错误代码
  2. 请求到达的服务器站点,但响应未被回送
  3. 如果您仔细检查错误,即使在服务元数据中我已经定义了'application / json',我也无法找到'application / octec-stream'。所以我不知道为什么应用程序无法获取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);
    
  4. 除了resteasy jars的版本之外,我可以使用相同的代码工作,例如

  5. 工作

    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
    

    欢迎任何帮助。

0 个答案:

没有答案