AxisFault
faultCode: {http://xml.apache.org/axis/}Server.NoEndpoint
faultSubcode:
faultString: No endpoint
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}exceptionName:org.apache.axis.NoEndPointException
{http://xml.apache.org/axis/}stackTrace:No endpoint
at com.wasu.WmgwSoap12Stub.mongateCsSpSendSmsNew(WmgwSoap12Stub.java:275)
at com.wasu.Test.mongateCsSpSendSmsNew01(Test.java:50)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at junit.framework.TestCase.runTest(TestCase.java:154)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
{http://xml.apache.org/axis/}hostname:2012-20131023HT
No endpoint
at com.wasu.WmgwSoap12Stub.mongateCsSpSendSmsNew(WmgwSoap12Stub.java:275)
at com.wasu.Test.mongateCsSpSendSmsNew01(Test.java:50)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at junit.framework.TestCase.runTest(TestCase.java:154)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
客户端调用代码:
package com.wasu; import java.rmi.RemoteException; import java.util.Date; import javax.xml.rpc.ServiceException; import junit.framework.TestCase; public class Test extends TestCase { private String userId = "BG2059"; private String password = "070033"; private String pszMobis = "13857552768"; private String pszMsg = "测试" + new Date().getTime(); public void mongateCsSpSendSmsNew01() {// 错误调用代码 try { WmgwSoap12Stub wmgwSoap12Stub = new WmgwSoap12Stub(); System.out.println(wmgwSoap12Stub.mongateCsSpSendSmsNew(userId, password, pszMobis, pszMsg, 1, "*")); } catch (RemoteException e) { e.printStackTrace(); } } public void mongateCsSpSendSmsNew02() {// 正确调用代码 try { WmgwLocator wmgwLocator = new WmgwLocator(); WmgwSoap_PortType wmgwSoap_PortType = wmgwLocator.getwmgwSoap12(); System.out.println(wmgwSoap_PortType.mongateCsSpSendSmsNew(userId, password, pszMobis, pszMsg, 1, "*")); } catch (RemoteException e) { e.printStackTrace(); } catch (ServiceException e) { e.printStackTrace(); } } }
生成的代码结构如下:
WmgwLocator.java部分代码如下:
/** * WmgwLocator.java * * This file was auto-generated from WSDL * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. */ package com.wasu; public class WmgwLocator extends org.apache.axis.client.Service implements com.wasu.Wmgw { ...... public com.wasu.WmgwSoap_PortType getwmgwSoap12() throws javax.xml.rpc.ServiceException { java.net.URL endpoint; try { endpoint = new java.net.URL(wmgwSoap12_address); } catch (java.net.MalformedURLException e) { throw new javax.xml.rpc.ServiceException(e); } return getwmgwSoap12(endpoint); } .... }
WmgwSoap_PortType.java部分代码如下:
package com.wasu; public interface WmgwSoap_PortType extends java.rmi.Remote { public java.lang.String mongateCsSpSendSmsNew(java.lang.String userId, java.lang.String password, java.lang.String pszMobis, java.lang.String pszMsg, int iMobiCount, java.lang.String pszSubPort) throws java.rmi.RemoteException; ....}
WmgwSoap12Stub.java部分代码如下:
/** * WmgwSoap12Stub.java * * This file was auto-generated from WSDL * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. */ package com.wasu; public class WmgwSoap12Stub extends org.apache.axis.client.Stub implements com.wasu.WmgwSoap_PortType { ....... public java.lang.String mongateCsSpSendSmsNew(java.lang.String userId, java.lang.String password, java.lang.String pszMobis, java.lang.String pszMsg, int iMobiCount, java.lang.String pszSubPort) throws java.rmi.RemoteException { if (super.cachedEndpoint == null) { throw new org.apache.axis.NoEndPointException(); } org.apache.axis.client.Call _call = createCall(); _call.setOperation(_operations[0]); _call.setUseSOAPAction(true); _call.setSOAPActionURI("http://tempuri.org/MongateCsSpSendSmsNew"); _call.setEncodingStyle(null); _call.setProperty(org.apache.axis.client.Call.SEND_TYPE_ATTR, Boolean.FALSE); _call.setProperty(org.apache.axis.AxisEngine.PROP_DOMULTIREFS, Boolean.FALSE); _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP12_CONSTANTS); _call.setOperationName(new javax.xml.namespace.QName("http://tempuri.org/", "MongateCsSpSendSmsNew")); setRequestHeaders(_call); setAttachments(_call); try { java.lang.Object _resp = _call.invoke(new java.lang.Object[] {userId, password, pszMobis, pszMsg, new java.lang.Integer(iMobiCount), pszSubPort}); if (_resp instanceof java.rmi.RemoteException) { throw (java.rmi.RemoteException)_resp; } else { extractAttachments(_call); try { return (java.lang.String) _resp; } catch (java.lang.Exception _exception) { return (java.lang.String) org.apache.axis.utils.JavaUtils.convert(_resp, java.lang.String.class); } } } catch (org.apache.axis.AxisFault axisFaultException) { throw axisFaultException; } } ...... }
wsdl详细介绍