我已经获得了第 3 方 wsdl 和部署描述符等,用于 Axis Web 服务的自定义加密。我使用 WSDL2Java 来生成 Java 类,并且一切都运行良好……在某种程度上。当我每隔几分钟调用这些方法时,它们会正常工作并返回有效数据。但是当我快速连续调用它们(因为我需要)时,我得到一个普通的旧服务器错误(如下)。
如果我输出axisFault故障代码和详细信息,我会得到以下信息:-
class org.apache.axis.AxisFault 故障代码 = {http://xml.apache.org/axis/}服务器故障原因 = 服务器错误故障字符串 = 服务器错误故障详细信息 = [Lorg.w3c.dom.Element;@2d4ba772 [org.apache.axis.server.AxisServer.invoke(AxisServer.java:281) 上 org.apache.axis.SOAPService.invoke(SOAPService.java:473) 的服务器错误。 transport.http.AxisServlet.doPost(AxisServlet.java:699) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java: 327) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 在 org.apache.catalina.core 的 javax.servlet.http.HttpServlet.service(HttpServlet.java:717)。ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)在 org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 在 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) 在 org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:175) 在 org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182) 在 org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) 在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) org.apache.catalina.connector.CoyoteAdapter .service(CoyoteAdapter.java:241) 在 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) 在 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580) 在org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:595) , 3rdpartyhostnameconnector.CoyoteAdapter.service(CoyoteAdapter.java:241) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java: 580) 在 org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) 在 java.lang.Thread.run(Thread.java:595) , 3rdpartyhostnameconnector.CoyoteAdapter.service(CoyoteAdapter.java:241) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java: 580) 在 org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) 在 java.lang.Thread.run(Thread.java:595) , 3rdpartyhostname
有人可以帮忙吗?我束手无策..这可能是时间/缓存问题吗?也许是 WSDL2JAVA 工具创建的 createCall() 方法中的缓存值之一?