热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Java使用Axis调用WebService的示例代码

这篇文章主要介绍了Java使用Axis调用WebService的示例代码,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

/** 
* @ClassName: TestAxis 
* @Description: TODO(描述这个类的作用) 
* @author huc
* 
*/ 

public class TestAxis {
  public static void main(String []args){
    String inCOnditions= "<&#63;xml version=\"1.0\" encoding=\"UTF-8\" &#63;>*公民身份号码姓名110101******李闻100600个人贷款3624221952123***李一闻100600个人贷款1234********王龙100600银行开户110101******100600个人车贷110101******100600230602***100600个人车贷";
    String inLicense = "********"; 
     try{    
        //调用webservice地址   
        String url = "https://www.****.com/services/NciicServices";           //如果url地址中有中文参数,要注意应单独将中文部分进行编码操作后再与URL字符串拼接到一起,编码方式为:URLEncoder.encode("中文部分", "utf-8"); 
        //调用方法名
        String method="nciicCheck";
        Service service = new Service();
        //通过service创建call对象   
        Call call = (Call) service.createCall();          //call.setSOAPVersion(SOAPConstants.SOAP12_CONSTANTS); 设置soap12协议方式调用
        //设置服务地址
        call.setTargetEndpointAddress(new java.net.URL(url)); 
        //设置调用方法
        call.setOperationName(method);
        call.setUseSOAPAction(true);
        //添加方法的参数,有几个添加几个
        //inLicense是参数名,XSD_STRING是参数类型,IN代表传入
        call.addParameter("inLicense", org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN); 
        call.addParameter("inConditions", org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);
          //带命名空间的写法        
          //call.setOperationName(new QName("http://bussiness.***.com", "callPT"));				          //call.addParameter(new QName("http://bussiness.***.com","xmlData"),org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);          //call.addParameter(new QName("http://bussiness.***.com","methodName"),org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);
          //设置返回类型 
        call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);          //解决错误:服务器未能识别 HTTP 头 SOAPAction 的值           call.setUseSOAPAction(true);          call.setSOAPActionURI(targetNamespace + operationName);
        Object ret= null;
        try{
          //使用invoke调用方法,Object数据放传入的参数值
          ret = call.invoke(new Object[] {inLicense,inConditions}); 
        }catch(Exception e){
          e.printStackTrace();
        }
        //输出SOAP请求报文
        System.out.println("--SOAP Request: " + call.getMessageContext().getRequestMessage().getSOAPPartAsString());
        //输出SOAP返回报文
        System.out.println("--SOAP Response: " + call.getResponseMessage().getSOAPPartAsString());
        //输出返回信息
        System.out.println("result==="+ret.toString()); 
    }catch(Exception e){
    e.printStackTrace();
    }
  }  
}

下面是输出结果信息:

--SOAP Request: <&#63;xml version="1.0" encoding="UTF-8"&#63;>**********
--SOAP Response: <&#63;xml version="1.0" encoding="UTF-8"&#63;><&#63;xml version="1.0" encoding="UTF-8"&#63;>
-72IP&#x5730;&#x5740;&#x53D7;&#x9650;
result===<&#63;xml version="1.0" encoding="UTF-8"&#63;>
-72IP地址受限

以上就是Java 使用Axis调用WebService的示例代码的详细内容,更多关于Java 使用Axis调用WebService的资料请关注其它相关文章!


推荐阅读
  • 本文详细介绍如何利用已搭建的LAMP(Linux、Apache、MySQL、PHP)环境,快速创建一个基于WordPress的内容管理系统(CMS)。WordPress是一款流行的开源博客平台,适用于个人或小型团队使用。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • PHP 5.5.0rc1 发布:深入解析 Zend OPcache
    2013年5月9日,PHP官方发布了PHP 5.5.0rc1和PHP 5.4.15正式版,这两个版本均支持64位环境。本文将详细介绍Zend OPcache的功能及其在Windows环境下的配置与测试。 ... [详细]
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
  • 本文详细介绍了网络存储技术的基本概念、分类及应用场景。通过分析直连式存储(DAS)、网络附加存储(NAS)和存储区域网络(SAN)的特点,帮助读者理解不同存储方式的优势与局限性。 ... [详细]
  • PHP 过滤器详解
    本文深入探讨了 PHP 中的过滤器机制,包括常见的 $_SERVER 变量、filter_has_var() 函数、filter_id() 函数、filter_input() 函数及其数组形式、filter_list() 函数以及 filter_var() 和其数组形式。同时,详细介绍了各种过滤器的用途和用法。 ... [详细]
  • 远程过程调用(RPC)是一种允许客户端通过网络请求服务器执行特定功能的技术。它简化了分布式系统的交互,使开发者可以像调用本地函数一样调用远程服务,并获得返回结果。本文将深入探讨RPC的工作原理、发展历程及其在现代技术中的应用。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • 本文介绍了如何在具备多个IP地址的FTP服务器环境中,通过动态地址端口复用和地址转换技术优化网络配置。重点讨论了2Mb/s DDN专线连接、Cisco 2611路由器及内部网络地址规划。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 本文探讨了 RESTful API 和传统接口之间的关键差异,解释了为什么 RESTful API 在设计和实现上具有独特的优势。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 在当前众多持久层框架中,MyBatis(前身为iBatis)凭借其轻量级、易用性和对SQL的直接支持,成为许多开发者的首选。本文将详细探讨MyBatis的核心概念、设计理念及其优势。 ... [详细]
  • 深入理解一致性哈希算法及其应用
    本文详细介绍了分布式系统中的一致性哈希算法,探讨其原理、优势及应用场景,帮助读者全面掌握这一关键技术。 ... [详细]
author-avatar
mobiledu2502857723
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有