使用eclipse内置的插件创建AXIS2 webSerive服务器端与客户端代码
eclipse版本:
Eclipse Java EE IDE for Web Developers. Version: Luna Service Release 1a (4.4.1)
此次代码创建均为dynamic java web工程,dynamic Web module 2.5,tomcat 6.0,jdk 1.6,jre 1.6
前提准备:
1.需要下载axis2-1.7.3-bin包。
2.eclipse需要配置如图:D:\2016workspace\example\axis2-1.7.3为上述下载的包中的axis2-1.7.3放置位置。
服务器端代码
1.创建一个java web项目:
2.给项目创建一个服务器端的即将作为wsService方法
3.将该方法创建为ws方法
点击Finish->start server
可能会报错:xmlschema-core可能版本不对或者缺少该jar包
需要xmlschema-core-2.2.1.jar包,将该jar包放置WebContent\WEB-INF\lib下
重新启动Tomcat没有报错了OK
4.通过浏览器输入wsdl的地址查看:webService的描述文件
5. 可以了,将该文件保存下来为WSClass.wsdl(当然名字无所谓顺便取,这个文件是留着后面生成客户端代码使用的)放置地方无所谓。例如图下:
好了服务器代码暂时告一段落。
客户端代码:
自动生成篇章:
1.新建一个项目java web Project 本例子叫wsclient
新建好项目之后,进入创建ws客户端代码步骤:如图:
下一步也报错跟创建ws serverPro一样的问题缺少xmlschema-core-2.2.1.jar包
拷贝到wsclient\WebContent\WEB-INF\lib下重新再来一次。如果确定复制进去,还报错。refresh下代码或者重启 。
2. 好了,这是生成了一些东西,其他咱不看,就看那两个java文件。可以查看该代码。其实这就是一个方便客户端编写调用ws的代码stub代码和异步请求的响应回调。
3. 编写一下调用server WS的客户端代码,采用同步调用方式如图:
4. 运行ClientTestWs代码
报错如下:
一句话修改之前创建服务器端ws时自动生成的services.xml文件:
将http://www.w3.org/2004/08/wsdl/in-only修改为http://www.w3.org/ns/wsdl/in-only
将http://www.w3.org/2004/08/wsdl/in-out修改为http://www.w3.org/ns/wsdl/in-out
这个例子中的services.xml的文件如下图所示:
再次运行客户端代码:
本文是使用axis2开发webService,刚刚看到一个使用原生jdk开发webService的,按照步骤开发一遍是可行的。
网址记录如下:http://blog.youkuaiyun.com/simba_cheng/article/details/52076065