org.apache.cxf.interceptor.Fault: Marshalling Error: null



我使用cxf 3.4.1创建了一个web服务

当我向webservice发送请求时,它工作得很好,但有时一个或其他请求,它给我错误与下面的堆栈跟踪控制台。

我使用jdk 1.6, jboss 5.1.0 GA, jboss -cxf-3.4.1.GA

有谁能帮我解决这个问题吗?

我收到以下错误:

 org.apache.cxf.interceptor.Fault: Marshalling Error: null
    at org.apache.cxf.jaxb.JAXBEncoderDecoder.marshall(JAXBEncoderDecoder.java:252)
    at org.apache.cxf.jaxb.io.DataWriterImpl.write(DataWriterImpl.java:169)
    at org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(AbstractOutDatabindingInterceptor.jav:110)

将源代码与您的问题放在一起,以获得更好的回答。

这看起来像是客户端出于某种原因关闭了连接。超时或客户端结束或类似。基本上,服务器正在尝试写一个响应,但套接字已经关闭。

Nirmal是对的。这是客户机提前关闭连接时CXF的典型错误。但是,可能会有太多的原因导致仅仅放置异常消息就无法获得特定的答案。

我也有同样的错误,在我的情况下,原因是我在WS中声明了一个异常抽象类,所以当客户端试图解组它时,会抛出一个异常,并且客户端已经提前关闭了连接。

我的建议是在cause异常中放置一个断点并调试错误。

最新更新