java 基于axis2在eclipse 下自动生成webservice:
1.环境准备
下载axis2
(图一)
其中axis2-1.6.2-bin.zip 中有axis2 所需jar 文件
axis2-eclipse-codegen-plugin-1.6.2.zip和axis2-eclipse-service-plugin-1.6.2.zip 为eclipse自动生成axis2 webservic 的插件
1.1.将axis2-eclipse-codegen-plugin-1.6.2.zip和axis2-eclipse-service-plugin-1.6.2.zip解压后放到eclipse 安装目录的plugins目录中,重启eclipse ,在eclipse 中右键新建中有如下选项则插件安装成功。(图二)
(图二)
2.在eclipse 中创建项目:选择如下(图三、图四)
(图三)
(图四)
3.将解压后的axis2-1.6.2-war.zip文件web-info目录下的conf、modules、services文件放到项目的web-info目录下,并根据web.xml修改新建项目的web.xml目录:(可以直接将内容拷贝到自己的目录)
T_WebService AxisServlet org.apache.axis2.transport.http.AxisServlet 1 AxisServlet /services/* index.jsp
4.将axis2-1.6.2-bin.zip解压并将解压后的lib目录复制到项目lib 目录下(可根据自己需求选择性复制)
5.右键项目选择new--->outher 选择Axis2 Service Archiver 找到项目的classes文件路径下一步
下一步
下一步
下一步
下一步定义service name 输入自己的类包名和类名 点击load 如下:
下一步
下一步, 出现如下界面即为完成点击fish
在eclipse刷新项目,在项目services 目录下就看到了自己创建的服务文件;
客户端文件创建:
右键项目-->Axis2 Code Generator 点击Next
看到如下界面继续下一步
输入包名和类名加载classes 加入classes 文件路径点击loading 如果提示successful 点击Next
出现如下界面,以下内容可以根据实际需求修改,我选择的是默认然后点Next
选择services.wsdl 文件的输出路径 Next
出现如下如下界面即为成功
测试,将服务发布到tomcat 运行 ,在浏览器输入地址: 正常显示如下:
java代码调用例子:
package com.wsclient.demo;import javax.xml.namespace.QName;import org.apache.axis2.AxisFault;import org.apache.axis2.addressing.EndpointReference;import org.apache.axis2.client.Options;import org.apache.axis2.rpc.client.RPCServiceClient;public class TestClient {public static void main(String[] args) throws AxisFault { RPCServiceClient sc = new RPCServiceClient(); Options options = sc.getOptions(); EndpointReference endre = new EndpointReference( options.setTo(endre); Object[] addArgs = new Object[]{"xiao zhang "};//参数值 Class [] classes = new Class []{String.class}; //返回值类型 QName q = new QName("); //命名空间和方法名称 Object returnValue = sc.invokeBlocking(q, addArgs,classes)[0]; System.out.println("------"+returnValue); }}
输出如下结果
以上就是基于axis2 的webservice 在eclipse 中的生成步骤