热门标签 | 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的资料请关注其它相关文章!


推荐阅读
  • 本文详细介绍了在PHP中如何获取和处理HTTP头部信息,包括通过cURL获取请求头信息、使用header函数发送响应头以及获取客户端HTTP头部的方法。同时,还探讨了PHP中$_SERVER变量的使用,以获取客户端和服务器的相关信息。 ... [详细]
  • 本文探讨了在使用 MyBatis 进行批量数据处理时遇到的参数绑定异常问题,并提供了详细的解决方案。 ... [详细]
  • Maven快照版本管理及更新策略详解
    本文深入探讨了Maven中的快照版本管理和更新策略,解释了快照版本与正式版本的区别,并提供了如何配置快照更新策略的方法,以确保项目依赖始终保持最新。 ... [详细]
  • 笔记说明重学前端是程劭非(winter)【前手机淘宝前端负责人】在极客时间开的一个专栏,每天10分钟,重构你的前端知识体系& ... [详细]
  • JavaScript 跨域解决方案详解
    本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
  • 搭建个人博客:WordPress安装详解
    计划建立个人博客来分享生活与工作的见解和经验,选择WordPress是因为它专为博客设计,功能强大且易于使用。 ... [详细]
  • 精选10款Python框架助力并行与分布式机器学习
    随着神经网络模型的不断深化和复杂化,训练这些模型变得愈发具有挑战性,不仅需要处理大量的权重,还必须克服内存限制等问题。本文将介绍10款优秀的Python框架,帮助开发者高效地实现分布式和并行化的深度学习模型训练。 ... [详细]
  • 本文总结了一次针对大厂Java研发岗位的面试经历,探讨了面试中常见的问题及其背后的原因,并分享了一些实用的面试准备资料。 ... [详细]
  • 本文详细探讨了在Web开发中常见的UTF-8编码问题及其解决方案,包括HTML页面、PHP脚本、MySQL数据库以及JavaScript和Flash应用中的乱码问题。 ... [详细]
  • 在尝试启动Java应用服务器Tomcat时,遇到了org.apache.catalina.LifecycleException异常。本文详细记录了异常的具体表现形式,并提供了有效的解决方案。 ... [详细]
  • 本文详细介绍了Java代码分层的基本概念和常见分层模式,特别是MVC模式。同时探讨了不同项目需求下的分层策略,帮助读者更好地理解和应用Java分层思想。 ... [详细]
  • 一、使用Microsoft.Office.Interop.Excel.DLL需要安装Office代码如下:2publicstaticboolExportExcel(S ... [详细]
  • 本文介绍了Tomcat的基本操作,包括启动、关闭及首次访问的方法,并详细讲解了如何在IDEA中创建Web项目,配置Servlet及其映射,以及如何将项目部署到Tomcat。 ... [详细]
  • Java虚拟机及其发展历程
    Java虚拟机(JVM)是每个Java开发者日常工作中不可或缺的一部分,但其背后的运作机制却往往显得神秘莫测。本文将探讨Java及其虚拟机的发展历程,帮助读者深入了解这一关键技术。 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
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社区 版权所有