axis2webservice axis2服务器端返回 map list

axis2  时间:2021-06-22  阅读:()

问个比较弱的问题,我刚接触webservice ,axis和axis2 有什么区别啊?

Axis全称Apache eXtensible Interaction System,是apache组织下的一个开源项目,用来做webservice开发的,有java版的实现,也有c++版的实现,其前身最早是IBM的SOAP4J,后来捐给Apache后改名Apache SOAP,也就是支持SOAP1.1的那个版本,到现在的AXIS已经是第三代了,AXIS对Apache SOAP的改进有很多,比如用SAX代替以前的DOM,增加对WSDL的支持,支持SOAP1.2等等 使用axis很easy,在apache网站上把axis下载了后(最新版本1.2.1),把%AXIS_HOME%webappsaxis整个目录copy到tomcat的webapps目录下面,启动tomcat,浏览器中输入http://localhost:8080/axis就可以了 上面说的只是axis运行起来了,要想布置自己的webservice,axis支持两种方法:一种是用JWS(Java Web Service),好处是只要有源码比如说Hello.java,把他改成Hello.jws后放到%TOMCAT_HOME%webappsaxis目录下面就搞定,浏览器里面输入.apache.axis.client.AdminClient deploy.wsdd就搞定了,卸载这个webservice就.apache.axis.client.AdminClient undeploy.wsdd,客户端输入http://localhost:8080/axis/services/Hello就可以了 介绍了部署webservice的两种方法后,下面说说客户端的访问方式,也有两种,一种是通过axis实现的java里面的JAX-RPC进行动态调用,另外一种就是通过服务器端产生的wsdl文件利用WSDL2Java工具生成Client Stub后访问。

通过JAX-RPC的比较简单,需要提供的有SOAP router URL,service namespace,operation name,operation parameter types,operation return types,看看下面这个例子就明白了: public SOAPWrapper() { String location = "http://localhost:8080/axis/services/BookService"; try { Service service = new Service(); call = (Call)service.createCall(); call.setTargetEndpointAddress(new url(/location)); } catch (Throwable t) { handleError("SOAPWrapper (constructor) had an Exception.",t); } } public void create(Book book) { try { call.removeAllParameters(); call.setOperationName("create"); call.addParameter("arg1",qn,ParameterMode.IN); call.setReturnType(XMLType.AXIS_VOID); call.invoke(new Object[] {book}); return; } catch (Throwable t) { handleError("SOAPWrapper (create) had an Exception.",t); return; } } 程序中的Call和Service是对JAX-RPC中Call和Service的具体实现.apache.axis.client.Call implements .apache.axis.client.Service implements javax.xml.rpc.Service 第二种客户端的方法就是利用WSDL2Java产生Client stub后通过stub调用,WSDL2Java的操作对象是service所对应的wsdl文件,这个文件怎么产生呢?一种方法前面是由axis自动产生,如前面服务器端的配置所说,无论通过jws或是wsdd的方式,axis都会产生相应的wsdl;还有一种方式就是利用Java2WSDL对java源文件进行操作也可以产生相应的wsdl文件。

axis axis2 版本很多,而且差异很大。应该学习那个版本的呢?

建议学习axis2 1.4.1版 Axis2的架构和Axis的架构已经不一样了,Axis2采用模块化的方式,可以方便地进行扩展。

例如安全模块Rampart和可靠消息模块都是扩展模块。

另外,Axis2 1.5系列的eclipse客户端开发工具插件,我一直没有用成功,总报错。

但是Axis2 1.4系列的客户端开发插件是可以使用的,建议还是先用Axis2 1.4吧,能省去不少麻烦。

而且1.5系列的很多新增功能其实用不到,也没必要跟它较劲。

webservice axis2根据wsdl生成客户端访问服务端出现的问题

你确定你的服务发布在服务器上了吗? 还有你的服务是不是有多个,提示是说 http://localhost:8080 / axis2 /服务/ webservice1没有找到,你的服务是不是改动过,没有保存。

把写的java代码先按ctrl+s保存,在发布到服务器上,然后用客户端调用。

一步步来,应该没问题的。

webservice axis2服务器端返回 map list

客户端要有相应的接口类,然后用axis2的相应客服端代码调用方法即可 Service service = new Service(); Call call = (Call) service.createCall(); call.setTargetEndpointAddress( new .URL(endpoint) ); call.setOperationName(new QName(XMLConstants.NULL_NS_URI, "方法名")); List ret = (List) call.invoke( new Object[] { "参数" } );

创梦云 香港沙田、长沙联通2核1G仅需29元一个月 挂机宝7元一个月

商家介绍:创梦云是来自国内的主机销售商,成立于2018年4月30日,创梦云前期主要从事免备案虚拟主机产品销售,现在将提供5元挂机宝、特惠挂机宝、香港云服务器、美国云服务器、低价挂机宝等产品销售。主打高性价比高稳定性挂机宝、香港云服务器、美国云服务器、香港虚拟主机、美国虚拟主机。官方网站:http://cmy0.vnetdns.com本次促销产品:地区CPU内存硬盘带宽价格购买地址香港特价云服务器1...

青云互联:美国洛杉矶CN2弹性云限时八折,15元/月起,可选Windows/可自定义配置

青云互联怎么样?青云互联是一家成立于2020年6月的主机服务商,致力于为用户提供高性价比稳定快速的主机托管服务,目前提供有美国免费主机、香港主机、香港服务器、美国云服务器,让您的网站高速、稳定运行。美国cn2弹性云主机限时8折起,可选1-20个IP,仅15元/月起,附8折优惠码使用!点击进入:青云互联官方网站地址青云互联优惠码:八折优惠码:ltY8sHMh (续费同价)青云互联活动方案:美国洛杉矶...

日本vps云服务器选择指南。

日本vps云服务器怎么选择?很多人都会遇到日本vps和日本云服务器怎么选择的问题,日本云服务器具有免备案的特点。小编今天就分析一下日本云服务器价格多少钱,以方便大家选购的时候有个更加合适的取舍。日本云服务器租用前比较选择,高性能、安全、高效、免备案日本云服务器是很关键的因素。那么,日本云服务器该怎么选择呢?日本作为我们的邻国,与其贸易、文化往来是比较多的。日本云服务器价格多少钱一年?一、日本·CN...

axis2为你推荐
mergefield邮件合并中如何插入百分数flash实例Flash元件和实例的概念及关系?国家法规数据库在哪里可以找到比较全面的法律法规更新的信息?pat是什么格式如何把JPG图片变为PAT格式图片?手机软件开发工具如何自己开发一个app软件webservice框架WebService新手,请教WebService需要什么包方正证券官方网方正证券同花顺下载/2010同花顺官方网站/同花顺官方网站首页erp系统教程ERP系统怎样操作,有教学视频吗?gbk内码怎么查GBK内码?怎么查微信注册时间怎么查看自己的微信号用了多久
查域名 花生壳动态域名 已备案域名出售 主机测评 hostmaster godaddy优惠码 免费名片模板 警告本网站 地址大全 php空间申请 微信收钱 t云 网游服务器 服务器监测 免费私人服务器 最漂亮的qq空间 河南移动梦网 百度云空间 中国联通宽带测速 xshell5注册码 更多