jax-ws发布的webservice服务,会出现偶发异常,重新调用成功

qq_39728621 qq_39728621 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
采用jax-ws发布的一个webservice服务,在项目环境下偶尔会出现如下异常,平均100笔出现2笔
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方式)

lswliushengwang

jax-ws发布webservice

以jdk1.6以上自带的jax-ws来发布webservice,压缩包里包含服务端和客户端,下载导入即可启动运行测试,有疑问的话欢迎咨询哈

shadow_lin
评论 4
收藏 已收藏
分享
返回顶部
qq_39728621
Java EE 67,535 成员 225,843 内容