AxisFault  faultCode: {http:schemas.xmlsoap.orgsoapenvelope}Server.userException

mac2025-07-12  2

ERROR12

AxisFault  

faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException  

faultSubcode:  

faultString: java.lang.reflect.InvocationTargetException

faultActor:  

faultNode:  

faultDetail:        

{http://xml.apache.org/axis/}hostname:localhost

java.lang.reflect.InvocationTargetException         at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)         at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)         at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)         at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)         at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)         at javax.xml.parsers.SAXParser.parse(SAXParser.java:392)         at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)         at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)         at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)         at org.apache.axis.client.Call.invokeEngine(Call.java:2784)         at org.apache.axis.client.Call.invoke(Call.java:2767)         at org.apache.axis.client.Call.invoke(Call.java:2443)         at org.apache.axis.client.Call.invoke(Call.java:2366)         at org.apache.axis.client.Call.invoke(Call.java:1812)         at org.apache.jsp.interface_.findTree_00281_0029_jsp.wsGetColumn(findTree_00281_0029_jsp.java:94)         at org.apache.jsp.interface_.findTree_00281_0029_jsp._jspService(findTree_00281_0029_jsp.java:298)         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)         at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)         at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:239)         at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:215)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)         at com.hanweb.jcms.filter.ConversionJspFilter.doFilter(ConversionJspFilter.java:83)         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)         at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)         at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)         at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)         at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)         at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)         at java.lang.Thread.run(Thread.java:748)

      心想,在本机做单元测试时都没问题啊,怎么一部暑到服务器上就出问题了,肯定是少拷或拷错了文件导致服务器上接口方法与本机不一样,后面上服务器上一看,果然是一个类文件拷了老版本的了(由于接口内部实现更改了,引用了一个新的类,而拷的老版本还是以前的,所以客户端在调用时,才出现此异常),换上最新的文件,问题解决。

     

      个人感觉出现这种问题应该都是接口内部实现时,没有找到所需要的对象、参数或者是所传入的请求参数类型不符、不存在所导致的,从这几方面出发应该可以找到错误。

 

客户端调用webservice,在invoke()时出现异常,表示该invoke方法所代表的服务器端方法抛出异常。

服务器端代码,在eclipse实现并通过测试,将class文件拷贝到jetty下并布webservice后,客户端通过远程调用该方法出现错误。

经过分析,在eclipse实现服务器端代码时,工程中加入了所需的jar包,该服务器端代码在jetty下运行时,由于找不到相应的jar包,故出现异常。

解决方法

将服务器端正常运行所需的jar包拷贝到jetty_homewebappsaxisWEB-INFlib目录下,或是把所需jar包的路径加入jetty的class_path中

注意:如果在服务器端代码中涉及到对当前目录下文件的操作,例如读取文件等操作,在jetty下发布webservice时,应该在jetty_home下进行相应的配置,避免出现System.IO.FileNotFoundException。(在eclipse下运行代码,当前目录是workspaceproject,而发布webservice后,作为服务器端代码,当前目录是jetty_home)

最新回复(0)