最近在做一个支付的接口.

因为接口方使用webservice交互. 

我只能去学习了下webservice

现在出了一个很古怪的问题~ 

我在请求他们url的时候, 返回给我找不到控制名错误

Message part refundRequest was not recognized.  (Does it exist in service WSDL?)

请教大神这是怎么回事

上代码

我这边使用的是axis.

requestUrl 是 请求地址

sb.toString是我发过去的报文.

                        Service service=(Service) new Service();

Call call =(Call)service.createCall();

call.setTargetEndpointAddress(requestUrl);

call.setOperationName("refundRequest");

String repose=(String)call.invoke(new Object[] { sb.toString() });


因为现在返回给我找不到操作名.

所以我也不知道到底是我这写错了还是客户方那边有问题?

下面上错误信息


AxisFault

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

 faultSubcode: 

 faultString: Message part refundRequest was not recognized.  (Does it exist in service WSDL?)

 faultActor: 

 faultNode: 

 faultDetail: 

{http://xml.apache.org/axis/}stackTrace:Message part refundRequest was not recognized.  (Does it exist in service WSDL?)

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 org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.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 com.rongyifu.mms.refund.bank.SftRefund.executeRefund(SftRefund.java:99)

at com.rongyifu.mms.refund.RefundProccessor.proccess(RefundProccessor.java:24)

at com.rongyifu.mms.dao.RefundDao.OnlinerefundHandle(RefundDao.java:276)

at com.rongyifu.mms.service.RefundmentService.OnlineRefund(RefundmentService.java:304)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606)

at org.directwebremoting.impl.ExecuteAjaxFilter.doFilter(ExecuteAjaxFilter.java:34)

at org.directwebremoting.impl.DefaultRemoter$1.doFilter(DefaultRemoter.java:472)

at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:475)

at org.directwebremoting.impl.DefaultRemoter.execute(DefaultRemoter.java:323)

at com.rongyifu.mms.filter.MyDWRRemoter.execute(MyDWRRemoter.java:32)

at org.directwebremoting.servlet.PlainCallHandler.handle(PlainCallHandler.java:52)

at org.directwebremoting.servlet.UrlProcessor.handle(UrlProcessor.java:101)

at org.directwebremoting.servlet.DwrServlet.doPost(DwrServlet.java:144)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)

at java.lang.Thread.run(Thread.java:744)