使用Eclipse自带Web Service插件(Axis1.4)生成Web Service服务端/客户端
创建一个名字为math的Java web工程,并将WSDL文件拷入该工程中
将Axis所需的jar包拷贝至WebRoot\WEB-INF\lib目录下,这些jar包会自动导入math工程中
一,生成Web Service服务端
选中MathImpl.wsdl文件右键->Web Services->Generate Java Bean Skeleton
仅仅生成Web Service服务端代码即可,服务器选择Tomcat 6.0,Web Service环境选择Apache Axis,服务工程选择math工程,选择完成后点击“下一步”:
然后选择Web Servic服务端代码的生成路径,选择完成后点击“下一步”:
只生成Web Service服务端代码,并不进行部署,这里直接点击“完成”即可
此时可以发现在math工程中自动生成了Web Service服务端的代码和部署/解除文件
只需编写MathImplSoapBindingImpl文件中的服务端具体处理过程即可:
- /**
- * MathImplSoapBindingImpl.java
- *
- * This file was auto-generated from WSDL
- * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter.
- */
- package com.sean.ws;
- public class MathImplSoapBindingImpl implements com.sean.ws.MathImpl{
- public int plus(int a, int b) throws java.rmi.RemoteException {
- //return -3;
- int c = a + b;
- System.out.println("The result is:" + c);
- return c;
- }
- }
二,生成Web Service客户端
选中MathImpl.wsdl文件右键->Web Services->Generate Client
只生成Web Service客户端代码,选择完成后点击“下一步”:
然后选择Web Servic客户端代码的生成路径,选择完成后点击“完成”:
此时可以发现在math工程中自动生成了Web Service客户端代码
直接使用MathImplProxy类即可:
- package com.sean.ws;
- import java.rmi.RemoteException;
- public class Test {
- public static void main(String[] args) throws RemoteException {
- MathImplProxy proxy = new MathImplProxy();
- proxy.plus(1, 2);
- }
- }