webservices 简单实例

这两天没有什么事,想研究一下webservices,所以在网上看一些资料,终于完成了个简单的例子
在这之前首先要到apache网站上下载所需要的包,axis2-bin和axis2-war;
将下载的包进行解压,把axis2.war 复制到tomcat/webapps目录下,如果是用jboss也是一样,我在jboss里也试一下但没有成功,启动的时候报错了。启动tomcat,在浏览器里输入地址http://localhost/axis2,如果你出现的welcome的界面说明我你的第一步也成功了。我们服务发布以后点击services就可以看到。
需要说明的是axis1和axis2在tomcat上的发布还不样,axis1还需要将mail.jar/activation.jar/tools.jar(在jdk的lib下面)/xmlsec.jar拷贝到tomcat/lib目录下,
第二步就可写一个小的程序来测试下能不能将服务发布上去

public class MyWS {

public String ws(){
return "WS测试";
}
}

只是这样还不能将服务发布去,还需要进行一些配置,因为我建的是一个java project,所以需要在src下新建一个META-INF,在这个文件夹下面创建一个services.xml;
<?xml version="1.0" encoding="UTF-8"?>
<service name="MyWS">
<Description>WSTest</Description>//对这类进行描述,不支持中文
<parameter name="ServiceClass" locked="false">com.ouruan.ws.MyWS</parameter>
<operation name="ws">//方法名
<messageReceiver
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver">
</messageReceiver>
</operation>
</service>
这个serivecs.xml的作用就是将我们需要发布的服务在这个文件里面进行一下声明和描述
现在就将这个项目导出成jar文件,但还需要把导出后的jar文件重命名成xx.aar文件才行,将这个aar文件放入到tomcat/axis2/WEB-INF/services目录下,启动tomcat,
http://localhost/axis2点击services就可以看到,说明我们服务就已经成功了!

下面写一段代码来测试一下
public class TestWS {

public static void main(String[] args) throws AxisFault {
RPCServiceClient reclient = new RPCServiceClient();
Options opt = new Options();
opt.setTo(new EndpointReference("http://localhost/axis2/services/MyWS"));//这个参数就是Service EPR地址
opt.setAction("urn:ws");//当你在页面点开我们发布成功的服务就可以看到一个xml文件在<wsdl:portType name="MyWSPortType">下面 wsaw:Action="urn:ws"
reclient.setOptions(opt);
OMElement element = reclient.invokeBlocking(new QName("http://ws.com","return"),new Object[]{});//这个地址就是你的类里的包路径,同样在那个xml文件中也可以找到targetNamespace="http://ws.com",参数return表示会返回结果,new Object[]{},是这个方法需要的参数。
Iterator values = element.getChildrenWithName(new QName("http://ws.com","return"));
while(values.hasNext()){
OMElement omEclement = (OMElement)values.next();
System.out.println(omEclement.getText());
}
}

运行的结果为"WS测试"
weixin073智慧旅游平台开发微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
python017基于Python贫困生资助管理系统带vue前后端分离毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值