Axis2、Axis1 以及其他接口的调用方式

在请求的时候出现问题,使用下面的方式请求就不会出现问题。

package webservice.client.utils;

import java.util.Iterator;
import java.util.Map;

import javax.xml.namespace.QName;

import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpResponseException;
import org.ksoap2.transport.HttpTransportSE;

/**
 * Axis2 测试工具类
 * @=============================================
 *
 * @author  : Liuyc
 * @create  : 2015-9-8 下午02:42:25
 * @update  :
 * @bolg    : http://www.cnblogs.com/yuchuan/
 * @csdn    : http://blog.csdn.net/l_lycos
 * @E-mail  : [email protected]
 * @desc    :
 *
 * @=============================================
 */
public class Axis2tUtil {

    /**
     * 暂时为找到Axis2调用Axis1,先使用SAOP调用
     * @param url
     * @param spaceName
     * @param method
     * @param map
     * @return
     */
    public static String getResult(String url ,String spaceName, String method, Map<String, String> map){

        SoapObject request = new SoapObject(url, method);    

        Iterator it = map.keySet().iterator();
        while(it.hasNext()){
            String key = (String) it.next();
            String value = map.get(key);
            request.addProperty(key, value);
        }

        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10);
        envelope.bodyOut = request;
        envelope.dotNet = true;
        envelope.setOutputSoapObject(request);
        HttpTransportSE ht = new HttpTransportSE(url);
        String ret = null;
        try {
            ht.call(null, envelope);
            ret = String.valueOf(envelope.getResponse());
            return ret;
        } catch (HttpResponseException e1) {
            e1.printStackTrace();
        } catch (IOException e1) {
            e1.printStackTrace();
        } catch (XmlPullParserException e1) {
            e1.printStackTrace();
        }
        return null;

    }

 }

需要导入的jar包: ksoap2-3.4.0.jar

时间: 2024-10-25 04:24:42

Axis2、Axis1 以及其他接口的调用方式的相关文章

Saltstack的API接口与调用方式

saltstack看起来是成为一个大规模自己主动化运维和云计算管理的一个框架,类似于SDK,并非像puppet仅仅成为一个工具.基于良好设计的API和清楚的思路,让salt的二次开发变得非常easy.写非常少的代码就能够将salt跟现有的运维系统结合.saltstack是用python语言实现的,假设对saltstack本身进行二次开发,就必须得会python语言. Saltstack是通过多个独立的模块构成的,这些都能够当做saltstack的api.然后在上层做基础开发能够通过调用这些sal

webservice的axis2客户端调用方式和xfire调用方式

1.axis2调用方式: package com.shine.fund; import javax.xml.namespace.QName; import org.apache.axis2.AxisFault; import org.apache.axis2.addressing.EndpointReference; import org.apache.axis2.client.Options; import org.apache.axis2.rpc.client.RPCServiceClien

调用HTTP接口两种方式Demo

本Demo大部分参考原著:http://www.jianshu.com/p/cfdaf6857e7e 在WebApi发布之前,我们都是通过WebRequest/WebResponse这两个类组合来调用HTTP接口的 封装一个RestClient类 using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using

WebService CXF调用方式《三》

问题?WebService CXF调用方式<三>,CXF工作原理和调用方式 一.CXF是什么? Apache CXF是一个开源的,全功能的,容易使用的Web服务框架.CXF是两个项目的结合:由IONA技术公司(现在是Progress的一部分)开发的Celtix和由Codehaus主持的团队开发的XFire,合并是由人们在在Apache软件基金会共同完成的.CXF的名字来源于"Celtix"和"XFire"的首字母. 二.CXF有什么作用? Apache

【转载】COM 组件设计与应用(十一)—— IDispatch 及双接口的调用

原文:http://vckbase.com/index.php/wv/1236.html 一.前言 前段时间,由于工作比较忙,没有能及时地写作.其间收到了很多网友的来信询问和鼓励,在此一并表示感谢.咳......我也需要工作来养家糊口呀...... 上回书介绍了两种方法来写自动化(IDispatch)接口的组件程序,一是用 MFC 方式编写“纯粹”的IDispatch 接口:二是用 ATL 方式编写“双接口”的组件. 二.IDispatch 接口和双接口 使用者要想调用普通的 COM 组件功能,

EC应用之多平台接口远程调用

在传统的网络应用编写中都是通过接收消息处理然后应答,但在.net 3.0后提供了一个基于业务接口调用的网络交互体系WCF.基于WCF .NET程序可以通过接口调用的方式进行远程业务调用处理.由于WCF是MS提供的体系,所以在mono和xamarin所支持的其他平台都没有良好地被支持.但随便着mono和xamarin的迅速发展,基于业务接口远程调用的服务体系该提供给更多平台提供通讯的便利性;为了解决这些问题EC组件提供了一套基于业务接口远程调用方法实现,借助于mono和xamarin可以使些功能简

简单解析三种JAVA调用方式-同步,异步,回调

模块之间有三种调用方式: 1.同步调用 同步调用很简单,就是直接调用方法B,必须等到方法A执行完才会继续执行原程序. 2.异步调用 异步调用,就是在A程序中给程序B一个实现,当B运行的时候,在满足条件的情况下能够调用A程序中的实现.举例说明 public interface Food { void eat(); } public class Cow implements Food { @override void eat() { syso("eat cow"); } } public

java实现WebService 以及客户端不同的调用方式

java 实现WebService 以及不同的调用方式 webservice:    就是应用程序之间跨语言的调用    wwww.webxml.com.cn    1.xml    2.    wsdl: webservice description language web服务描述语言        通过xml格式说明调用的地址方法如何调用,可以看错webservice的说明书        3.soap simple object access protoacl (简单对象访问协议)   

Live555 中的客户端动态库.so的调用方式之一 程序中调用

1.  打开动态链接库:    #include <dlfcn.h>    void *dlopen(const char *filename, int flag);    该函数返回操作句柄,如:    void *pHandle = dlopen(strSoFilePath, RTLD_LAZY); 2.  取动态对象地址:    #include <dlfcn.h>    void *dlsym(void *pHandle, char *symbol);    dlsym根据