Axis调用webservice查看手机信息(固定号码)

1.   下载axis 

2.    在myeclipse下建立一个web  project 项目

    把axis下的lib包导入到项目中的lib中间去。

3.   创建一个javabean   TelephoneAxis.java

   代码如下:

 

 

package com.tools;
import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.soap.SOAP11Constants;
import org.apache.axis2.Constants;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.client.ServiceClient;
import org.apache.axis2.transport.http.HTTPConstants;
import org.apache.axis2.transport.http.HttpTransportProperties.ProxyProperties;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class TelephoneAxis {
       
private static EndpointReference targetEPR = new  EndpointReference(
        "http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx");	        
        public void  getResult() throws Exception
	    {
            String s = null;
        	ServiceClient sender =  new  ServiceClient();	          
	        sender.setOptions(buildOptions());
	        OMElement  result = sender.sendReceive(buildParam());		       
	        s = result.getFirstElement().getText();
	        System.out.println(s);	        	    
	    }              
	    private static OMElement buildParam()
	    {
	        OMFactory fac = OMAbstractFactory.getOMFactory();
	        OMNamespace omNs = fac.createOMNamespace("http://WebXml.com.cn/", "");
	        OMElement data = fac.createOMElement("getMobileCodeInfo", omNs);   
	        OMElement inner = fac.createOMElement("mobileCode", omNs);	            	       	 
	        inner.setText("15874333***");	        	           	 	         
	        data.addChild(inner);          
	        return   data;
	    }
	    
	    private static Options buildOptions()
	    {
	        Options options = new Options();
	        options.setSoapVersionURI(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI);
	        options.setAction("http://WebXml.com.cn/getMobileCodeInfo");       	      
	        options.setTo(targetEPR);
	        //options.setProperty 如果不是通过代理上网,此句可省
	        //options.setProperty(HTTPConstants.PROXY, buildProxy());
	        options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
	        return options;
	    }
	    
	    /**
	     * 本机采用代理服务器上网时,需要设置代理
	     * @return
	   
	    public static ProxyProperties buildProxy()
	    {
	        ProxyProperties proxyProperties = new ProxyProperties();
	        proxyProperties.setProxyName("代理名称");
	        proxyProperties.setProxyPort(8080);
	        return proxyProperties;
	    }
*/
	    public static void main(String[] args) throws Exception
	    {
	        TelephoneAxis s = new TelephoneAxis();
	        s.getResult();
	    }
	}



4.  大功告成。  如果需要动态输入电话号码 可以加入一个index.jsp  页面 。

5.  待续  。。。。。

你可能感兴趣的:(exception,webservice,MyEclipse,String,SOAP,手机)