標籤:java mod cal head try except soaphead opera int
進入.asmx的連結,找到方法名、命名空間等
import javax.xml.namespace.QName;import org.apache.axis.client.Call;import org.apache.axis.client.Service;import org.apache.axis.message.SOAPHeaderElement;/** * Created by liwj on 2017/6/15. */public class AsmxTest {private static String urlhsb=""; private static String namespaceURI=""; public static void main(String[] args){ String xsXml=""; Service service=new Service(); try { Call call=(Call)service.createCall(); call.setTargetEndpointAddress(urlhsb); //設定要調用哪個方法 call.setOperationName(new QName(namespaceURI,"GetCbzm")); call.addParameter(new QName(namespaceURI,"xml"), org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING); call.setUseSOAPAction(true); call.setSOAPActionURI(namespaceURI); //設定soapHeader SOAPHeaderElement soapHeaderElement = new SOAPHeaderElement(namespaceURI, "ValidationSoapHeader"); soapHeaderElement.setNamespaceURI(namespaceURI); try { soapHeaderElement.addChildElement("UserName").setValue(""); soapHeaderElement.addChildElement("PassWord").setValue(""); call.addHeader(soapHeaderElement); }catch (Exception e){ } String res=String.valueOf(call.invoke(new Object[]{xsXml})); System.out.println(res); }catch (Exception e){ System.out.println(e.getMessage()); } }}
java 調用webservice介面(asmx)