jax-ws发布的webservice服务,会出现偶发异常,重新调用成功
com.sun.xml.ws.protocol.soap.MessageCreationException: 由于出现异常错误, 无法创建 SOAP 消息: XML 读进程错误: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} Message: Premature end of file.
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.encoding.SOAPBindingCodec.decode(SOAPBindingCodec.java:319)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.transport.http.HttpAdapter.decodePacket(HttpAdapter.java:347)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.transport.http.HttpAdapter.access$400(HttpAdapter.java:101)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:670)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:266)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.transport.http.servlet.ServletAdapter.invokeAsync(ServletAdapter.java:225)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doGet(WSServletDelegate.java:161)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doPost(WSServletDelegate.java:197)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.transport.http.servlet.WSServlet.doPost(WSServlet.java:81)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at javax.servlet.http.HttpServlet.service(HttpServlet.java:153)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at javax.servlet.http.HttpServlet.service(HttpServlet.java:91)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:103)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:187)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:265)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:273)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.caucho.server.port.TcpConnection.run(TcpConnection.java:682)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.caucho.util.ThreadPool$Item.runTasks(ThreadPool.java:730)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.caucho.util.ThreadPool$Item.run(ThreadPool.java:649)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at java.lang.Thread.run(Thread.java:662)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} Caused by: com.sun.xml.ws.streaming.XMLStreamReaderException: XML 读进程错误: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} Message: Premature end of file.
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.streaming.XMLStreamReaderUtil.wrapException(XMLStreamReaderUtil.java:326)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.streaming.XMLStreamReaderUtil.next(XMLStreamReaderUtil.java:99)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.streaming.XMLStreamReaderUtil.nextContent(XMLStreamReaderUtil.java:169)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.streaming.XMLStreamReaderUtil.nextElementContent(XMLStreamReaderUtil.java:104)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:202)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:338)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:156)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.encoding.SOAPBindingCodec.decode(SOAPBindingCodec.java:314)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} ... 18 more
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} Message: Premature end of file.
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:594)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.util.xml.XMLStreamReaderFilter.next(XMLStreamReaderFilter.java:96)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} at com.sun.xml.ws.streaming.XMLStreamReaderUtil.next(XMLStreamReaderUtil.java:80)
[2020.04.07 08:16:06.437][08:16:06.437] {http--80-9259$2048092149} ... 24 more
以上报错用soapui测试发送空报文可以重现,但是接口的调用放和ESB检查都说发送了正确xml报文,然后重发就没问题。
而且通过检查线程发现,接口的警告信息到异常有10秒左右间隔

相关推荐
jax-ws实现webservice调用
公司代码实现,简单的webservice服务 发布,实现客户端的调用。
WebService-01-使用JAX-WS发布WebService服务
一、写在前面的话 近来项目中使用WebService技术,从早期的Axis2到现在的CXF,闲来无事,做做笔记,以备后用,后续会写CXF的基本用法、拦截器、Map类型在WebService的使用、通过自定义拦截器实现权限的验证等。 JAX-WS位于JDK的javax.jws包下,主要包括@WebService,@WebMethod等几个注解,使用这些注解,便可发布WebServ
JAX-WS在Tomcat中发布服务
JAX-WS在Tomcat中发布服务实例,同时在Handler中实现简单的授权校验。
使用JAX-WS(JWS)发布WebService
使用JAX-WS(JWS)发布WebService 使用myeclipse开发java的webservice的两种方式 方式一: (此方式只能作为调试,有以下bug:jdk1.6u17?以下编译器不支持以Endpoint.publish方式发布document方式的soap,必须在service接口和实现类添加“@SOAPBinding(style = SOAPBinding.Style.RPC)”注解; 访问受限,似乎只能本机访问(应该会绑定到publish的URL上,如下使用localhost的话就只能本机访问)……) 方式二: (基于web服务器Servlet方式)
jax-ws发布webservice
以jdk1.6以上自带的jax-ws来发布webservice,压缩包里包含服务端和客户端,下载导入即可启动运行测试,有疑问的话欢迎咨询哈


