当前位置: 代码迷 >> Eclipse >> eclipse上开发axis2(一)(学习交流)
  详细解决方案

eclipse上开发axis2(一)(学习交流)

热度:35   发布时间:2016-04-23 12:01:01.0
eclipse下开发axis2(一)(学习交流)

??? 这段时间工作中需要使用webservice开发,所以再加进学习.看了不少网上的教程,特别符合的不多,自己弄了两天,进行下总结.
??? 我的环境:myeclipse8,tomcat,axis1.x(具体我也不清楚,写的是1.5,打开时1.4)?
????
??? 好,废话不多说,开始!

??? 1.安装axis的eclipse插件.
????? 1.1 下载axis插件,具体地址记不住了,需要的朋友附件中有,包括
????????? a).axis2-eclipse-codegen-wizard.zip
????????? b).axis2-eclipse-service-archiver-wizard.zip
????????? 当然还需要axis的包,axis2-1.5.1-bin.zip,axis2-1.5-war.zip(这个部署的时候有用)

????? 1.2 安装?
??????????1.2.1 把刚才下的两个插件包解压后放置myeclipse8安装目录下的dropins文件夹中.
????????? 1.2.2 在axis2-eclipse-codegen-wizard的lib文件夹中加入geronimo-stax-api_1.0_spec-1.0.1.jar和backport-util-concurrent-3.1.jar文件,并修改该目录中的plugin.xml文件,加入如下两行
?????????

          <library name="lib/geronimo-stax-api_1.0_spec-1.0.1.jar">         	<export name="*"/>         </library>         <library name="lib/backport-util-concurrent-3.1.jar">           	<export name="*"/>         </library>         


???? (因为目前似乎这个axis的插件经常出问题,不加以上两个jar文件的话会出现客户端生成最后一步报错的问题)?
???? 好了,插件安装完成,这里需要注意的是,安装插件的过程中请关闭myeclipse8,否则服务端生成插件又会出问题,就是出现使用插件过程中点击next按钮后,面板上什么都没有了,不过没关系,出现这样的情况的话,请先删除刚才安装的两个插件,然后启动myeclipse8,然后再关闭后,考入两个插件,再启动就OK了(我也初学者,可能这个问题有更好的办法解决,只是目前我这么处理的,有经验的朋友可以多多指点,谢谢.?

??????2.开发服务端
?????????? 在这个例子中,我们也就采用老掉牙的例子,hello world吧,多好理解的,服务端的目的提供一个sayhello的方法,需要传入一个name的参数,然后返回,hello world! name,好了,废话又多了,做事情.?
???????????2.1 新建web工程,名字就叫Hello吧,然后建立如下HelloServer,代码如下:
???????

package server;public class HelloServer {       public String sayHello(String name){??            return "Hello! "+name;?      }}


??????? (够简单吧,应该好理解哈!)?
??????? 2.2 根据HelloServer.java新建wsdl?

??????????此步骤可跳过,主要是说明一下插件的功能,其实生成wsdl可以在部署服务端后,通过地址栏访问得到.
????????? 右键工程-->新建-->其他-->Axis2 Wizards-->Axis2 Code Generator
????????? 如图所示一步一步的:






????????? 然后点击完成,OK了,在src目录下应该可以看到HelloWorld.wsdl哈.

?????????

??????????3?部署服务端

?????????????3.1 建立服务目录

?????????????????? 刚才下的axis2-1.5-war.zip文件,解压,有axis2.war文件,再解压,复制axis2\WEB-INF\下的

modules,conf,services三个目录到Hello工程下的WEB-INF目录下.

?????????????3.2?打包并部署??

?????????????????? 右键工程-->新建-->其他-->Axis2 Wizards-->Axis2 Service?Archiver
?????????????????? 如图所示一步一步的:

?????????????????? (请注意图片中的路径位置)

???????????????







????????? 单击Finish完成,好了,刷新一下项目,可以看到结构图如下.

???????????? 可以看到在services目录下多了我们添加的SayHelloService.arr包.

?

?????????? 3.3 编辑web.xml加入如下代码

?

<servlet>          <servlet-name>AxisServlet</servlet-name>          <servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>          <load-on-startup>1</load-on-startup>  </servlet>  <servlet-mapping>          <servlet-name>AxisServlet</servlet-name>          <url-pattern>/services/*</url-pattern>  </servlet-mapping> 

?

??????????? 3.4 解压刚才下载的axis2-1.5.1-bin.zip,然后复制lib下所有jar文件到该工程中.

??????????????????好了,部署项目,启动tomcat,然后访问?http://localhost:8080/Hello/services/HelloServer_Service?wsdl


?
?
?完成!?下次继续客户端的方法.累了.
?
?
?
?
?




????????

??????????????
????????
???????
????????

?

  相关解决方案