MyEclipase在原有web工程中进行axis2接口开发
程序员文章站
2022-05-21 18:29:12
...
由于axis2高版本存在种种未知问题,本文引用的是axis2.1.4的jar包。
开发服务端web service服务
1. 创建web工程,在com.*.webservice包下创建接口实现类
2. 下载axis2-1.4.1-war.zip,链接:
http://ishare.iask.sina.com.cn/f/17037679.html?from=like
解压到文件夹axis2-1.4.1,将lib下的所有jar包拷贝到工程lib目录下,并导入工程
3. 将文件夹axis2-1.4.1下的axis2.war包再次解压,将解压目录下的conf、modules和services文件夹拷贝到web工程的WEB-INF目录下,清空services目录下的内容,创建/myservices(此名称随便)/META-INF/目录,并在此目录下创建services.xml文件,具体路径:WEB-INF/services/myservices/META-INF/services.xml
内容如下:
4. 修改web.xml文件,内容如下:
5. 运行工程,查看接口描述文件wsdl:http://localhost:8080/###(工程名)/services/AxisService(接口名)?wsdl
在myeclipse中安装axis2客户端代码生成插件Codegen
6. 下载jar包,链接:
http://download.csdn.net/download/Awx/2826319
7. 下载的压缩包里包含Axis2_Codegen_Wizard_1.4.0和Axis2_Service_Archiver_1.3.0这两个文件夹,将其导入%MyEclipse%\Genuitec\MyEclipse 8.x Latest\dropins\目录下,重启MyEclipse,点击new,即可看到下图
[img]
[/img]
8. 重新运行web工程,启动完成后,点击“new”,点击“Axis2 Code Generator”,选择通过wsdl文件产生客户端代码,可选择将axis2的jar一起打包进去,选择生成目录,finish,完成。
测试接口
9. 创建测试java工程,将axis2的jar包导入,将生成的客户端代码文件AxisServiceCallbackHandler.java和AxisServiceStub.java拷贝到java工程中,创建Test类,代码如下:
测试完成。
开发服务端web service服务
1. 创建web工程,在com.*.webservice包下创建接口实现类
public class Calculate { public int sum(int num1, int num2) { return num1 + num2; } }
2. 下载axis2-1.4.1-war.zip,链接:
http://ishare.iask.sina.com.cn/f/17037679.html?from=like
解压到文件夹axis2-1.4.1,将lib下的所有jar包拷贝到工程lib目录下,并导入工程
3. 将文件夹axis2-1.4.1下的axis2.war包再次解压,将解压目录下的conf、modules和services文件夹拷贝到web工程的WEB-INF目录下,清空services目录下的内容,创建/myservices(此名称随便)/META-INF/目录,并在此目录下创建services.xml文件,具体路径:WEB-INF/services/myservices/META-INF/services.xml
内容如下:
<service name="AxisService"><!-- web service名称--> <description>Axis Service Description</description><!-- 接口描述--> <parameter name="ServiceClass">com.sinosure.webservice.Calculate</parameter><!-- 接口实现类--> <operation name="sum"><!-- 接口名称--> <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/> </operation> </service>
4. 修改web.xml文件,内容如下:
…… …… <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <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> </web-app>
5. 运行工程,查看接口描述文件wsdl:http://localhost:8080/###(工程名)/services/AxisService(接口名)?wsdl
在myeclipse中安装axis2客户端代码生成插件Codegen
6. 下载jar包,链接:
http://download.csdn.net/download/Awx/2826319
7. 下载的压缩包里包含Axis2_Codegen_Wizard_1.4.0和Axis2_Service_Archiver_1.3.0这两个文件夹,将其导入%MyEclipse%\Genuitec\MyEclipse 8.x Latest\dropins\目录下,重启MyEclipse,点击new,即可看到下图
[img]
[/img]
8. 重新运行web工程,启动完成后,点击“new”,点击“Axis2 Code Generator”,选择通过wsdl文件产生客户端代码,可选择将axis2的jar一起打包进去,选择生成目录,finish,完成。
测试接口
9. 创建测试java工程,将axis2的jar包导入,将生成的客户端代码文件AxisServiceCallbackHandler.java和AxisServiceStub.java拷贝到java工程中,创建Test类,代码如下:
public static void main(String[] args) { try { AxisServiceStub stub = new AxisServiceStub("http://localhost:8080/(工程名)/services/AxisService?wsdl"); AxisServiceStub.Sum sum = new AxisServiceStub.Sum(); sum.setNum1(1); sum.setNum2(2); System.out.println(stub.sum(sum).get_return()); } catch (AxisFault e) { e.printStackTrace(); } catch (RemoteException e) { e.printStackTrace(); } }
测试完成。
上一篇: PHP基础开发代码示范
下一篇: 如何印出逗號的值