webservice之接口开发

泄露秘密 提交于 2019-12-01 07:52:15

经过前两天的学习,基本上已经对webservice有了基本的认识,在工作中我遇到webservice一般也就有一下的几种情况,

不同应用程序,不同语言之间的共享数据(传说中的接口),不同公司之间的数据交互,业务往来(还是传说中的接口),调用共有接口来丰富自己应用的内容(还是接口调用),自己应用不同层级的调用(大部分是用来解耦用的,当然前提是你们的项目特别大,如果项目不大这样用会显得特别累赘),所以就以上的类型来说,webservice主要还是用来接口调用和接口开发的,原因无他,无非就是耦合性比较底,可以降低项目的开发成本,调用一些免费的已有的功能!这些是我自己的总结,当然有人有新的看法和观念可以在博客上留言,一起交流一下!

上面的说完了,我们就接口开发来弄一个简单的例子,来让我们能更好的将webservice应用到我们的工作当中!

好了闲话少说,现在开始编辑的流程:

  1. 下载所需要的资源:http://axis.apache.org/axis2/java/core/tools/index.html这个是官方地址

下载完成以后我们开始给eclipse配置axis2的环境:

Window->Perferences->Web Services->Axis2 perferences->Axis2 Runtime->Axis2 Runtime location,Browse选择解压axis2-1.6.2-bin.zip得到的axis2-1.6.2文件目录如图:

(截图不好看将就着看吧,想喷的别对脸就好)

然后是安装插件:解压axis2-eclipse-codegen-plugin-1.6.2.zip和axis2-eclipse-service-plugin-1.6.2.zip,把得到的两个jar包放入eclipse目录下的\plugins\中,重启eclipse。

最后我们在tomcat上部署axis2:解压axis2-1.6.2-war.zip获得axis2.war并把它放到tomcat解压目录的webapps文件夹下,启动tomcat,浏览器中输入http://localhost:8080/axis2/,出现下面的图,说明配置成功。

这里在部署的时候出现了一个小插曲,就是当你启动tomcat的时候会出现tomcat启动闪退的问题,有没有突然感觉淡淡的忧伤,然后我们把下面的这个问题记录一下,tomcat闪退的原因:

在启动tomcat时,需要读取环境变量和配置信息,缺少了这些信息,就不能登记环境变量,导致了tomcat的闪退

解决方法:

1.在已解压的tomcat的bin文件夹下找到startup.bat,右击->编辑。在文件头加入下面两行:
SET JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0_37 (java jdk目录)
SET TOMCAT_HOME=D:\apache-tomcat-7.0.59(解压后的tomcat文件目录)
2.同样的。在已解压的tomcat的bin文件夹下找到shutdown.bat,右击->编辑。在文件头加入下面两行:
SET JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0_37(java jdk目录)
SET TOMCAT_HOME=D:\apache-tomcat-7.0.59(解压后的tomcat文件目录)
3.将你要发布/部署的web文件复制到tomcat的webapps目录下。
4.双击startup.bat即可启动tomcat,成功启动

历经淡淡的忧伤,终于部署OK了!

用AXIS2插件在eclipse发布服务

1.创建webproject

2.编写简单的服务代码 如图:

3.在eclipse的空白workspace处,右键new->Other,在弹出的对话框中,找到Axis2 Service Archiver,双击->选择HelloWorldService所在项目的class路径,如图:

这个地方需要注意一下,这里不用带包名

这里的className需要带包名



做到这一步以后,我们将生产的aar文件放在tomcat下如图:

放进去以后我们重启tocat然后访问我们的服务看看有没有wsdl文件如图:

能访问到就说明已经发布成功!

既然已经发布成功了,那么我们就验证一下我们的服务是否可以成功调用!

3.编写客户端验证服务能否成功调用:

在eclipse的空白处右键new->Other->Web services->Web Service Client,选中,点击NEXT->会出现如图:

在service的空白处填上地址:http://localhost:8080/axis2/services/serverTest?wsdl然后将Client type 拉到最上面,最后配置configuration 点击tomcat 7.0 server

在这里可能会出现一点点小错误,因为axis2不支持web2.5以上的版本,所以你需要将web版本改一下,才可以!

最后点击finish完成就OK了!

下面我们来测试一下,写个客户端测试代码

运行结果为:

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!