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();

    
    


  • 相关阅读:
    如何打开windows的远程桌面
    mongodb存储引擎
    使用场景举例
    webpack初识
    mongodb快速入门
    mongodb初识
    mysql主从复制与读写分离
    gradle简单配置跟模块依赖
    mysql执行计划
    synchronized的可见性理解
  • 原文地址:https://www.cnblogs.com/riskyer/p/3292168.html
Copyright © 2011-2022 走看看