Axis 2

Jun 07, 2016 pm 03:14 PM
axis webservice 发布 测试 编写 配置

在编写、发布和测试0配置的WebService时应注意如下几点: 1. POJO类不能使用package关键字声明包。 2. Axis2在默认情况下可以热发布WebService,也就是说,将WebService的.class文件复制到pojo目录中时,Tomcat不需要重新启动就可以自动发布WebService。如果

在编写、发布和测试0配置的WebService时应注意如下几点:
1. POJO类不能使用package关键字声明包。
2. Axis2在默认情况下可以热发布WebService,也就是说,将WebService的.class文件复制到pojo目录中时,Tomcat不需要重新启动就可以自动发布WebService。如果想取消Axis2的热发布功能,可以打开\webapps\axis2\WEB-INF\conf\axis2.xml,找到如下的配置代码: true
将true改为false即可。要注意的是,Axis2在默认情况下虽然是热发布,但并不是热更新,也就是说,一旦成功发布了WebService,再想更新该WebService,就必须重启Tomcat。这对于开发人员调试WebService非常不方便,因此,在开发WebService时,可以将Axis2设为热更新。在axis2.xml文件中找到false,将false改为true即可。
3. 在浏览器中测试WebService时,如果WebService方法有参数,需要使用URL的请求参数来指定该WebService方法参数的值,请求参数名与方法参数名要一致,例如,要测试getGreeting方法,请求参数名应为name,如上面的URL所示。
4. 发布WebService的pojo目录只是默认的,如果读者想在其他的目录发布WebService,可以打开axis2.xml文件,并在元素中添加如下的子元素:
上面的配置允许在\webapps\axis2\WEB-INF\my目录中发布WebService。例如,将本例中的SimpleService.class复制到my目录中也可以成功发布(但要删除pojo目录中的SimpleService.class,否则WebService会重名)。

用Java实现调用WebService的客户端程序

package client;

 import javax.xml.namespace.QName;

import org.apache.axis2.addressing.EndpointReference;

 import org.apache.axis2.client.Options;

import org.apache.axis2.rpc.client.RPCServiceClient;

public class RPCClient {

 public static void main(String[] args) throws Exception {

// 使用RPC方式调用WebService

 RPCServiceClient serviceClient = new RPCServiceClient();

 Options options = serviceClient.getOptions();

// 指定调用WebService的URL

EndpointReference targetEPR = new EndpointReference( "http://localhost:8080/axis2/services/SimpleService");

options.setTo(targetEPR);

// 指定getGreeting方法的参数值

Object[] opAddEntryArgs = new Object[] {"超人"};

// 指定getGreeting方法返回值的数据类型的Class对象

Class[] classes = new Class[] {String.class};

// 指定要调用的getGreeting方法及WSDL文件的命名空间

QName opAddEntry = new QName("http://ws.apache.org/axis2", "getGreeting");

 // 调用getGreeting方法并输出该方法的返回值

System.out.println(serviceClient.invokeBlocking(opAddEntry, opAddEntryArgs, classes)[0]);

// 下面是调用getPrice方法的代码,这些代码与调用getGreeting方法的代码类似

classes = new Class[] {int.class}; opAddEntry = new QName("http://ws.apache.org/axis2", "getPrice");

System.out.println(serviceClient.invokeBlocking(opAddEntry, new Object[]{}, classes)[0]);

}

}

用wsdl2java简化客户端的编写 

Axis2提供了一个wsdl2java.bat命令可以根据WSDL文件自动产生调用WebService的代码。wsdl2java.bat命令可以在"bin目录中找到。在使用wsdl2java.bat命令之前需要设置AXIS2_HOME环境变量,该变量值是
在Windows控制台输出如下的命令行来生成调用WebService的代码:
%AXIS2_HOME%\bin\wsdl2java -uri http://localhost:8080/axis2/services/SimpleService?wsdl -p client -s -o stub
其中-url参数指定了wsdl文件的路径,可以是本地路径,也可以是网络路径。-p参数指定了生成的Java类的包名,-o参数指定了生成的一系列文件保存的根目录。在执行完上面的命令后,读者就会发现在当前目录下多了个stub目录,在."stub"src"client目录可以找到一个SimpleServiceStub.java文件,该文件复杂调用WebService,读者可以在程序中直接使用这个类

在cmd命令窗口中执行

实际实现:


C:\Documents and Settings\Administrator>D:


D:\>cd axis2-1.5.4


D:\axis2-1.5.4>cd bin


D:\axis2-1.5.4\bin>

D:\axis2-1.5.4\bin>

D:\axis2-1.5.4\bin>wsdl2java -uri http://192.168.1.140:8099/services/SSO?ws

dl -p com.bcinfo.sso

Using AXIS2_HOME:   D:\axis2-1.5.4

Using JAVA_HOME:    D:\Program Files\Java\jdk1.6.0_10

Retrieving document at 'http://192.168.1.140:8099/services/SSO?wsdl'.

D:\axis2-1.5.4\bin>wsdl2java -uri http://192.168.1.140:8099/services/SSO?ws

dl -p com.bcinfo.SSoClient

Using AXIS2_HOME:   D:\axis2-1.5.4

Using JAVA_HOME:    D:\Program Files\Java\jdk1.6.0_10

Retrieving document at 'http://192.168.1.140:8099/services/SSO?wsdl'.

D:\axis2-1.5.4\bin>

 

 

 

class

 

package client;

import javax.xml.namespace.QName;

import org.apache.axis2.addressing.EndpointReference;

import org.apache.axis2.client.Options;

import org.apache.axis2.rpc.client.RPCServiceClient;

public class StubClient {

public static void main(String[] args) throws Exception {

 SimpleServiceStub stub = new SimpleServiceStub();
SimpleServiceStub.GetGreeting gg = new SimpleServiceStub.GetGreeting();

gg.setName("比尔");

System.out.println( stub.getGreeting(gg).get_return());

System.out.println(stub.getPrice().get_return());

 }

 }
上面的代码大大简化了调用WebService的步骤,并使代码更加简洁。但要注意的是,wsdl2java.bat命令生成的Stub类将WebService方法的参数都封装在了相应的类中,类名为方法名,例如,getGreeting方法的参数都封装在了GetGreeting类中,要想调用getGreeting方法,必须先创建GetGreeting类的对象实例。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

小红书怎么发布作品 小红书怎么发布文章和图片 小红书怎么发布作品 小红书怎么发布文章和图片 Mar 22, 2024 pm 09:21 PM

  小红书你们可以查看到各种的内容,为你带来多样的帮助,让你发现更美好的生活,你有什么想要分享的话,也是可以在这里发布的,让大家都可以看一看,同时还能够为自己带来收益,非常的划算,有不懂怎么在这里发作品的,都可以查看教程,每天都可以使用这个软件,发布各种内容,帮助大家们更好的使用起来,有需要的都不要错过了!  1、打开小红书,点击下方加号图标。  2、这里有【视频】【图片】【实况图】选择;选择想要发布的内容点击勾选。  3、在内容编辑页选择【下一步】。  4、输入您想要发布的文字内容点击【发布笔

为什么小红书发布不了作品视频?它要怎么发布自己的作品? 为什么小红书发布不了作品视频?它要怎么发布自己的作品? Mar 21, 2024 pm 06:36 PM

随着社交媒体的迅速发展,短视频平台已成为许多用户展示自我、分享生活的主要渠道。在小红书发布作品视频时,许多用户可能会遇到各种问题。本文将讨论可能导致小红书作品视频发布失败的原因,并提供正确的发布方法。一、为什么小红书发布不了作品视频?小红书平台偶尔会发生系统故障,可能是由于系统维护或升级等原因造成的。在这种情况下,用户可能会遇到无法发布作品视频的问题。用户需要耐心等待平台恢复正常后再尝试发布。网络连接不稳定或速度缓慢可能会妨碍用户在小红书上发布作品视频。用户应当确认自己的网络环境,确保连接稳定且

为什么小红书发布不出去?小红书发布内容无法展示怎么办? 为什么小红书发布不出去?小红书发布内容无法展示怎么办? Mar 21, 2024 pm 07:47 PM

小红书作为一款生活方式分享平台,吸引了大量用户在此分享生活点滴、种草商品。不少用户反映,自己的发布内容无法展示,这究竟是怎么回事呢?本文将分析可能导致小红书发布不出去的原因,并给出解决办法。一、为什么小红书发布不出去?小红书执行严格的社区准则,对于发布广告、垃圾信息、低俗内容等行为持零容忍态度。如果用户的内容违反规定,系统会进行拦截,导致内容无法展示。小红书要求用户发布高质量、有价值的内容,内容需要具有独特性和新意。如果内容过于普通、缺乏创新,可能无法通过审核,从而无法在平台上展示。3.账号异常

小红书发布怎么删除?发布删除怎么恢复? 小红书发布怎么删除?发布删除怎么恢复? Mar 21, 2024 pm 05:10 PM

小红书作为一家流行的社交电商平台,吸引了大量用户分享生活点滴和购物心得。有时候我们可能会不经意发布一些不合适的内容,这时候需要及时删除,这样可以更好地维护个人形象或者遵守平台规定。一、小红书发布怎么删除?1.登录小红书账号,进入个人主页。2.在个人主页下方,找到“我的创作”选项,点击进入。3.在“我的创作”页面,你可以看到所有发布的内容,包括笔记、视频等。4.找到需要删除的内容,点击右侧的“...”按钮。5.在弹出的菜单中,选择“删除”选项。6.确认删除后,该条内容将从你的个人主页和公共页面消失

小红书app如何进行发布作品呢 小红书app五分钟发布作品的教程 小红书app如何进行发布作品呢 小红书app五分钟发布作品的教程 Mar 12, 2024 pm 05:10 PM

  小红书app如何进行发布作品呢?很多的小伙伴们都知道在这款软件里面有着大量的创作作品以及强大的交友圈子。对于刚接触这款软件的用户们估计还不知道怎么进行发布作品吧,让更多的人去观看另一面的你。如果你还不知道怎么去发布里面的作品,那就赶紧参考一下又本站中的小编所推荐的小红书app五分钟发布作品的教程。小红书app五分钟发布作品的教程  1.点击【三】  如图所示,点击左上方红箭头所指的【三】。  2.点击【创作中心】  如图所示,点击红箭头所指的【创作中心】。  3.点击【去发布】  如图所示,

小红书几点发布效果最好?它从哪里发布流量推荐最多? 小红书几点发布效果最好?它从哪里发布流量推荐最多? Mar 21, 2024 pm 08:11 PM

在当今的社交网络时代,小红书已经成为年轻人分享生活、获取资讯的重要平台。许多用户希望通过在小红书上发布内容,吸引更多的关注和流量。那么,什么时间发布内容效果最好呢?本文将详细探讨小红书发布时间的选择以及流量推荐最多的发布位置。一、小红书几点发布效果最好?小红书发布内容的最佳时机通常是在用户活跃度较高的时间段。根据小红书用户的特点和行为习惯,有几个时间段是比较适宜的。在晚上7点到9点这个时间段,大多数用户已经下班回到家,开始使用手机浏览内容,寻找放松和娱乐。因此,在这个时段发布的内容更有可能引起用

furmark怎么看?-furmark怎么算合格? furmark怎么看?-furmark怎么算合格? Mar 19, 2024 am 09:25 AM

furmark怎么看?1、在主界面中设置“运行模式”和“显示模式”,还能调整“测试模式”,点击“开始”按钮。2、等待片刻后,就会看到测试结果,包含了显卡各种参数。furmark怎么算合格?1、用furmark烤机,半个小时左右看一下结果,基本上在85度左右徘徊,峰值87度,室温19度。大号机箱,5个机箱风扇口,前置两个,上置两个,后置一个,不过只装了一个风扇。所有配件都没有超频。2、一般情况下,显卡的正常温度应该在“30-85℃”之间。3、就算是大夏天周围环境温度过高,正常温度也是“50-85℃

如何发布小红书视频作品?发视频要注意什么? 如何发布小红书视频作品?发视频要注意什么? Mar 23, 2024 pm 08:50 PM

随着短视频平台的兴起,小红书成为了许多人分享生活、表达自我、获取流量的平台。在这个平台上,发布视频作品是一种非常受欢迎的互动方式。那么,如何发布小红书视频作品呢?一、如何发布小红书视频作品?首先,确保准备好一段适合分享的视频内容。你可以利用手机或其他摄像设备进行拍摄,需要注意画质和声音的清晰度。2.剪辑视频:为了让作品更具吸引力,可以对视频进行剪辑。可以使用专业的视频剪辑软件,如抖音、快手等,添加滤镜、音乐、字幕等元素。3.选择封面:封面是吸引用户点击的关键,选择一张清晰、有趣的图片作为封面,让

See all articles