zoukankan      html  css  js  c++  java
  • android ksoap2调用.net Webservice 方法总结

    android  ksoap2调用.net Webservice 方法直接放到一个类里:

    package com.util;
    
    import org.ksoap2.SoapEnvelope;
    import org.ksoap2.serialization.SoapObject;
    import org.ksoap2.serialization.SoapSerializationEnvelope;
    import org.ksoap2.transport.HttpTransportSE;
    
    
    
    public class AsmxUtil 
    {
    	private String SOAP_ACTION = "";
    	private String NAMESPACE = "http://tempuri.org/";
    	private String METHOD_NAME = "";
    	private String ServiceURL = "";
    	SoapObject request =null;
    	
    	public AsmxUtil(String serviceurl, String methodName)
    	{
    		
    		// 建立webservice连接对象  
    		ServiceURL = serviceurl;
    		METHOD_NAME = methodName;
    		SOAP_ACTION = NAMESPACE + METHOD_NAME;
    		request = new SoapObject(NAMESPACE, METHOD_NAME); 
    	}
    	
    	public void AddProperty(String name, Object v)
    	{
    		//参数值
    		request.addProperty(name, v);
    	  
    	}
    	
    	public String Call() throws Exception
    	{
    		
    		SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
    		// soap协议版本必须用SoapEnvelope.VER11(Soap V1.1) 
        	envelope.bodyOut = request;
        	envelope.dotNet=true;
        	//对dotnet webservice协议的支持,如果dotnet的webservice 
        	//不指定rpc方式则用true否则要用false 
        	
        	HttpTransportSE ht = new HttpTransportSE(ServiceURL);
        	ht.debug = true;
        	try {
        		ht.call(SOAP_ACTION, envelope);
        		if (envelope.getResponse() != null) 
        		{
        			String msg = envelope.getResponse().toString();
        			return msg;
        		} 
        		else 
        		{
        			return "error";
        		}
        	}
    		catch (Exception e) {
        		throw new Exception(e.getMessage());
        
    		}
    	}
    }

    调用方法:

    AsmxUtil au = new AsmxUtil("http://192.168.111.153/WebService2/Service1.asmx", "HelloWorld");
         au.AddProperty("username","admin");
    au.AddProperty("password","123");
            String xst = null;
    try {
    xst = au.Call();

    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    //text1.setText(e.getMessage());
    }
     
    Toast.makeText(this, xst, Toast.LENGTH_LONG).show();

    
    


  • 相关阅读:
    [转]浏览器退出之后php还会继续执行么?
    vim常用命令
    [转]自己写PHP扩展之创建一个类
    [转]用C/C++扩展PHP详解
    [转]PHP的执行流程,PHP扩展加载过程
    用扩展开发一个PHP类
    gcc
    Linux常用网络命令
    TCP-IP详解学习笔记1
    在Linux中调试段错误(core dumped)
  • 原文地址:https://www.cnblogs.com/riskyer/p/3292168.html
Copyright © 2011-2022 走看看