AXIS2框架下另一种发布WEBSERVICE的方法,以及浏览器中验证的方法及参数的写法
来源:互联网 发布:淘宝退款诈骗 编辑:程序博客网 时间:2024/06/08 09:07
http://blog.csdn.net/ccccdddxxx/article/details/8587160
这篇文章中写出了发布WEBSERVICE的一种形式,以及利用框架自动生成的webservice客户端的发布。
下面是在AXIS2框架下另一种发布WEBSERVICE的方法
1、编写一个简单的WebService的服务器端代码,代码如下:
import java.util.Random;/** * function: WebService HelloWorld服务示例 * @author hoojo * @createDate 2011-1-5 下午03:35:06 * @file HelloWorldService.java * @package com.hoo.service * @project Axis2WebService * @blog http://blog.csdn.net/IBM_hoojo * @email hoojo_@126.com * @version 1.0 */public class HelloWorldService {public String sayHello(String name) {return name + " say: hello [axis2]";}public int getAge(int i) {return i + new Random().nextInt(100);}}
注意,上面的HelloWorldService是没有package的。Copy这个类的class文件,放到tomcat目录下的webapps的axis2的WEB-INF目录的pojo文件夹下。
如果没有pojo这个目录就手动创建一个一个文件夹。然后在浏览器输入:http://localhost:8080/axis2/
点击Services的链接就可以看到我们手动发布的HelloWorldService了,或者是浏览器地址栏输入:http://localhost:8080/axis2/services/listServices
你就可以看到你刚才粘贴过去的这个WebService了。
点击链接就可以看到wsdl文件的内容了。内容很多,如果你看过axis1.x的介绍就知道wsdl文件的大致结构了。
下面讲解下为什么要将class放在pojo文件夹下。首先我们看看[tomcat_home]/webapps/axis2/WEB-INF/conf/axis2.xml
该文件中有这样一行代码:
<deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/>
.class的后缀文件放在目录pojo目录下。
2、测试这个WebService的方法
复制上面的HelloWorldService的链接地址,然后带上方法名称和参数值即可测试调用是否成功。如下:
http://localhost:8080/axis2/services/HelloWorldService/sayHello?name=jack
http://localhost:8080/axis2/services/HelloWorldService这个是WebService的地址
/sayHello是方法名称,?name=jack是参数名称和值
在浏览器中输入上面的地址后,可以看到如下效果:
可以看到返回值,和方法名称。ns:sayHelloResponse是方法名称,所有的方法名称后都会带上Response,后面的ns当然是当前方法所在的类的包名了,
这里没有package就是默认的axis2的域名。同样,getAge方法,也是一样的调用方法。
http://localhost:8080/axis2/services/HelloWorldService/getAge?i=22
结果如下:
这里需要注意有有在浏览器中输入的URL地址
在本人按照上述实验时按照上面提供的URL地址写是不对的
如上图所示:
重点在于,参数的名称要与WDSL文件的参数名称是相对应的,这里我生成的WDSL文件看到
如上图可以看到name 对应的参数名称应该是args0,以及getAge对应的参数也是args0
这样就成功了,
其实重点还是看WDSL文件
好了,今天就写到这,讨论没完,下篇文章接着说
- AXIS2框架下另一种发布WEBSERVICE的方法,以及浏览器中验证的方法及参数的写法
- AXIS2发布WebService的方法
- webservice axis2框架下的发布
- 用AXIS2发布WebService的方法
- 用AXIS2发布WebService的方法
- 用AXIS2发布WebService的方法
- 用AXIS2发布WebService的方法
- 用AXIS2发布WebService的方法
- 用AXIS2发布法WebService的方法
- 用AXIS2发布WebService的方法
- 用AXIS2发布WebService的方法
- 用AXIS2发布WebService的方法
- 用AXIS2发布WebService的方法
- 用AXIS2发布WebService的方法
- java:axis2环境下获取方法参数名的另一种方法
- axis2发布和客户端调用WebService的方法
- Axis2发布的WebService中排除不需要公开的public方法
- 另一种取消NTLM验证的方法
- OpenMax系统的结构(2)
- C++ 界面库比较
- OpenMax IL层的接口 3
- 常用ASP.NET操作类
- JS中dom绑定事件方法
- AXIS2框架下另一种发布WEBSERVICE的方法,以及浏览器中验证的方法及参数的写法
- 对Android发展的一些思考
- 2012年中国县级市面积排行(截止到2012年7月31日) (zz.IS2120@BG57IV3)
- Ubuntu 12.04下用g++编译cplex实例程序,配置、出现的问题,解决办法
- VC Include路径解析~~
- WINDOWS系统FTP服务设置
- PHP $_SERVER 详细信息
- php设计模式之备忘录模式
- call_user_func_array函数的用法