Java调用WebService(axis2)两种方法

java调用axis2_Java调用WebService方法总结(5)--Axis2调用WebService Axis2是新一点Axis,基于新的体系结构进行了全新编写,有更强的灵活性并可扩展到新的体系结构。文中demo所使用到的软件版本:Java1.8.0_191、Axis2 1.7.9。1、准备2、调用2.1、AXIOM方式AXIOM即AXis对象模型(AXis Object Model)是Apache Axis2的XML对象模型,可以大幅提升Axis2的性能。/*** axiom方式*@param... 阅读详情
 

// 方式一:生成客户端代码调用方式。(使用此方法可以简化很多代码)
 // 
 // 通过插件工具生成客户端代码进行调用。例如:存在一服务为
 // http://127.0.0.1:8000/axis2/services/HelloWorld?wsdl

//保存为HelloWorld.wsdl.

自动生成了代码,包括 HelloWorldProxy.java

public static void main(String[] args){

UploadProxy up = new UploadProxy();
  up.setEndpoint("http://127.0.0.1:70/uploadImg/services/UploadImg");

//图片上传fileinputstream省略
 up.updateImage("", uploadBuffer, 0, 0, "", "", "", "");}
 // 通过插件可以生成SMSSendServiceStub.java。调用的客户端代码如:
 public static void main(String[] args) throws Exception {
  HelloWorldStub stub;
  stub = new HelloWorldStub();
  HelloWorldStub.GetName helloWorld = new HelloWorldStub.GetName();//
  helloWorld.setName("peipan");
  System.out.println(stub.getName(helloWorld).get_return());

 }

//  方式二:使用axis2.rpc.client.RPCServiceClient方式调用。
//  public static void main(String[] args)  throws Exception  {
//  GetWSByAxis2 ws = new GetWSByAxis2();
//  ws.WSUrl = "http://127.0.0.1:8000/axis2/services/HelloWorld";
//  String result;
//  try {
//  result = ws.getStr("getName", "peipan");
//  System.out.println(result);
//  } catch (AxisFault e) {
//  e.printStackTrace();
//  }
//  }

-------------------------------------------------

package test;
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.RPCServiceClient;   

public class GetWSByAxis2 {
       private static String EndPointUrl;   
       private static String QUrl="http://ws.apache.org/axis2"; 
       private QName opAddEntry;    
       public String WSUrl;   
       public RPCServiceClient setOption() throws AxisFault   
       {   
           RPCServiceClient serviceClient = new RPCServiceClient();   
           Options options = serviceClient.getOptions();   
           EndpointReference targetEPR = new EndpointReference(WSUrl);   
           options.setTo(targetEPR);   
           return serviceClient;   
       }   
          
       public QName getQname(String Option){   
              
           return new QName (QUrl,Option);   
       }   
  //返回String   
       public String getStr(String Option,String why) throws AxisFault   
       {   
           RPCServiceClient serviceClient =this.setOption();    
         
           opAddEntry =this.getQname(Option);   
          
          String str = (String) serviceClient.invokeBlocking(opAddEntry,    
                           new Object[]{why}, new Class[]{String.class })[0];   
          return str;   
      }   
 // 返回一维String数组   
       public String[] getArray(String Option) throws AxisFault   
       {   
           RPCServiceClient serviceClient =this.setOption();    
         
           opAddEntry =this.getQname(Option);   
          
          String[] strArray = (String[]) serviceClient.invokeBlocking(opAddEntry,    
                           new Object[]{}, new Class[]{String[].class })[0];   
          return strArray;   
      }   
       //从WebService中返回一个对象的实例   
      public Object getObject(String Option,Object o) throws AxisFault   
      {    
         RPCServiceClient serviceClient =this.setOption();    
          QName qname=this.getQname(Option);   
          Object object = serviceClient.invokeBlocking(qname, new Object[]{},new Class[]{o.getClass()})[0];   
          return object;   
      }   
         
 /////////////////////////////////////////       读者可以自己封装数据类型,如int,byte,float等数据类型   
 }  

 

 

 

 

Java+Axis2调用Web Services 网络接口 使用Java+Axis2调用Web Services 网络接口,代码中列举4个例子可以查看,有详细注释提供参考。 立即下载

相关推荐

Java动态调用webService,axis2动态调用webService

NULL 博文链接:https://fanshuyao.iteye.com/blog/2264327

Java使用Axis2调用【.net】Web Service服务(快速上手、精简)

系统 .net开发而不是用Java写的WebService接口 虽说都一样,但还是有坑的,与往常的域名端口号相比,发布一般都是用WSDL文件样式发布,在文件里包含这个WebService对外暴露可使用的接口信息,使用.asmx站点路径和namespace访问。

关注我~分享更多技术干货 3006

紫光同创PDS软件操作指南:如何为FPGA新增自定义Flash型号

本文详细介绍了在紫光同创PDS软件中为FPGA新增自定义Flash型号的完整操作指南。针对官方支持列表之外的SPI Flash芯片,文章从理解FPGA配置逻辑入手,逐步讲解如何通过扫描Flash ID、在Flash Operator中精准填写参数、转换.sbit文件,最终完成固化的全过程,并分享了高级技巧与常见问题排查方法,帮助工程师摆脱对预设型号的依赖,实现灵活选型。

weixin_29204749的博客 322

Axis2调用WebService服务的3种方式(rpc调用不好用)

第一,RPC方式,不生成客户端代码,引入相应的axis2的jar包(不好用) 注意:暂时没有成功调用,没有参数传递时远程调用成功,当有参数传递时远程调用失败;package com.ming.axis2;import javax.xml.namespace.QName;import org.apache.axiom.om.OMElement; import org.apache.axis2.Axi

menghuanzhiming的博客 3万+

四类九种移位寄存器总结(循环(左、右、双向)移位寄存器、逻辑和算术移位寄存器、串并转换移位寄存器、线性反馈移位寄存器LFSR|verilog代码|Testbench|仿真结果)

移位寄存器有哪些分类呢? 按移位方向分类:①单向移位寄存器(包括左移、右移)②双向移位寄存器 按循环方式分类:①循环移位寄存器②非循环移位寄存器 按部位的不同分类:①逻辑移位寄存器②算术移位寄存器 按输入输出方式分类:①串入串出②串入并出③并入串出④并入并出

Loudrs的博客 1万+

数据库实验报告--MySQL

数据库完整版报告--MySQL 包括数据库创建、表的创建、视图以及授权和触发器的创建等内容,全是精华!看完点赞加收藏O(∩_∩)O~。

Mortalz7 4924

java 调用 axis2_java调用WebService服务 axis2实现方式

用到的jar包如下: 代码如下:importjavax.xml.namespace.QName;importorg.apache.axiom.om.OMElement;importorg.apache.axis2.addressing.EndpointReference;importorg.apache.axis2.client.Options;importorg.apache.axis...

weixin_42360237的博客 816

【深度剖析】三一重工的数字化转型(中篇)

三一重工在数字化转型方面取得了提高效率、降低成本、加强研发创新和改善内控管理等多方面的成效。本研究旨在通过对三一重工数字化转型的深入分析,引导企业思考在第四次工业革命与第三次能源革命交汇的超级技术窗口期,如何进一步把握发展机遇,并为同行业其他企业提供探索性的建议。作为装备制造行业的佼佼者,三一重工的数字化转型受到了业界的广泛关注。作为行业内首批接触并实践数字化转型的企业之一,三一重工的转型经验不仅成功,而且积累了丰富的理论与实践,为其他制造业企业的数字化转型提供了可借鉴的范例。

领信卓越的博客 2304

java使用axis2调用webservice接口实例

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.cli

java梦工厂 3708

DPABISurf使用教材

严老师的官方教程:http://rfmri.org/Course DPABISurf版本:dpabi50docker.tar.gz MATLAB版本:2018b 一、数据准备 (1)如果是数据的DICOM格式,整理成以下格式(注意文件夹的命名方式): 如果觉得不是很清楚,可以在官网下载Demo数据(http://rfmri.org/DemoData),参照里面的文件格式进行整理即可。 (2)如果数据是nii格式,整理成以下格式: 这里没有使用官网的demo数据进行学习,而是..

从事脑科学核磁共振方法学研究,在Nature communications等权威期刊发表研究论文,熟练掌握磁共振处理方法和统计学方法,欢迎大家和我交流。 8514

模型可解释性分析:基于SHAP的深度探索

SHAP模型可解释性分析摘要 本文系统性地介绍了SHAP(SHapley Additive exPlanations)方法在机器学习模型可解释性分析中的应用。SHAP基于博弈论的Shapley值理论,为特征重要性评估提供了统一框架。文章详细阐述了四种核心算法:Kernel SHAP(模型无关方法)、Tree SHAP(针对树模型的高效算法)、Deep SHAP(适用于深度学习)和Linear SHAP(线性模型专用)。通过Python实现展示了从数据准备到SHAP分析的全流程,包括摘要图、依赖图等可视化技术

huanghm88的专栏 606

java axis2 调用webservice 接口_Axis2 调用Webservice 接口 | 学步园

调用方法:TranslatorString输入中文,翻译成 拼音、英文。参数:wordKey(中文)现在要做,翻译词:【随便】,代码如下:package cn.com.webxml;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import org.apache.axiom.om.OMAbs...

weixin_30684945的博客 470

基于STM32的汽车主门电动窗开关系统设计方案

以下是基于 STM32CubeMX 和 HAL 库的示例代码,可实现基本的功能。

weixin_42300449的博客 994

axis2 java.net.url_axis,axis2调用.net的webservice

package testClick.src.test;import javax.xml.namespace.QName;import org.apache.axiom.om.OMAbstractFactory;import org.apache.axiom.om.OMElement;import org.apache.axiom.om.OMFactory;import org.apache.axi...

weixin_39760919的博客 219

手把手教你YOLOv8/YOLOv11分割训练自己数据集和推理,并教你使用Labelme工具标注数据(附分割网络结构图)

YOLOv8-seg 和 YOLOv11-seg 都是一种高效实例分割算法,实例分割模型的输出是一组勾勒出图像中每个物体的遮罩或轮廓,以及每个物体的类标签和置信度分数。当你不仅需要知道物体在图像中的位置,还需要知道它们的具体形状时,实例分割就非常有用了,功能非常强大,可以应对各种视觉任务。 YOLOv11-seg 则在 YOLOv8-seg 基础上进一步魔改了模型架构,相对分割速度可能更快,其他指标性能有待测试。实例分割可以用于自动驾驶、医疗图像处理、智能农业监控等领域。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 4470

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

java webservice util_java通过axis2调用webservice工具类

package cn.rx.oamp.util;import java.net.MalformedURLException;import java.rmi.RemoteException;import java.util.Date;import javax.xml.namespace.QName;import javax.xml.rpc.ServiceException;import org.ap...

weixin_39735509的博客 366

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

JAVA 调用Axis2 code generator 生成的webservice

以下代码为调用 JAVA 调用Axis2 code generator 生成的webservice的代码。   package test;import java.rmi.RemoteException;import org.apache.axis2.AxisFault;import soap.*; import type.*;public class soap {  public sta

点点滴滴 1849

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

java通过axis2调用webservice接口

java通过axis2调用webservice接口

搬砖狗-小强的专栏 796

Java调用WebService服务(基于axis2)

Java调用WebService服务(基于axis2) 前提 获取目标WebService服务的地址:http://Server:Port/xxx/xxx/xxxxxxxx.asmx 获取目标服务中需要调用的方法名:xxxxxx 根据WSDL文件或访问http://Server:Port/xxx/xxx/xxxxxxxx.asmx 得到目标服务的NameSpace 引入的依赖 <!-- https://mvnrepository.com/artifact/org.apache.axis2/addr

qq_37002981的博客 960

java axis2 客户端_Axis2 WebService客户端Axis2调用

packagesamples.quickstart.client;importjavax.xml.namespace.QName;importorg.apache.axiom.om.OMAbstractFactory;importorg.apache.axiom.om.OMElement;importorg.apache.axiom.om.OMFactory;importorg.apache.ax...

weixin_36024829的博客 484

axis2 发布 webservice 和 java调用webservice

1.下载与安装axis2:apache-tomcat-6.0.35.zip axis2-1.6.1-war.zip解压,然后将axis2.war复制到tomcat的webapp目录中,安装完毕! 启动tomcat测试axis2是否安装成功: http://localhost:8080/axis2 2.首先简单介绍一下webapp/axis2/的目录结构如下:axis2 |-- axi

bits00的专栏 6932

webservice 动态调用 java_Java动态调用webService,axis2动态调用webService

Java动态调用webServiceaxis2动态调用webService>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>&gt...

weixin_42305634的博客 379
上一篇: axis2新建和调用webservice
下一篇: Axis Web Service开发之旅 (二) --利用services.xml发布 .
facepp
博客等级 码龄22年 342粉丝 638原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值