使用Eclipse自带的Axis1插件生成Web Service服务端客户端

JDK版本:1.5.0_22

Eclipse版本:Helios Service Release 2(3.6.2)

WSDL文件的创建过程见http://blog.csdn.net/a19881029/article/details/24625429

创建一个名字为math的Java web工程,并将WSDL文件拷入该工程中

将Axis所需的jar包拷贝至WebRootWEB-INFlib目录下,这些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文件中的服务端具体处理过程即可:

[java] view plain copy

  1. /** 
  2.  * MathImplSoapBindingImpl.java 
  3.  * 
  4.  * This file was auto-generated from WSDL 
  5.  * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter. 
  6.  */  
  7.   
  8. package com.sean.ws;  
  9.   

10. public class MathImplSoapBindingImpl implements com.sean.ws.MathImpl{  

  1. 11.     public int plus(int a, int b) throws java.rmi.RemoteException {  
  2. 12.         //return -3;  
  3. 13.         int c = a + b;  
  4. 14.         System.out.println("The result is:" + c);  
  5. 15.         return c;  
  6. 16.     }  

17. }  

 

二,生成Web Service客户端

选中MathImpl.wsdl文件右键->Web Services->Generate Client

 

 只生成Web Service客户端代码,选择完成后点击“下一步”:

 

然后选择Web Servic客户端代码的生成路径,选择完成后点击“完成”:

 

此时可以发现在math工程中自动生成了Web Service客户端代码

 

直接使用MathImplProxy类即可:

[java] view plain copy

  1. package com.sean.ws;  
  2.   
  3. import java.rmi.RemoteException;  
  4.   
  5. public class Test {  
  6.     public static void main(String[] args) throws RemoteException {  
  7.         MathImplProxy proxy = new MathImplProxy();  
  8.         proxy.plus(1, 2);  
  9.     }  

10. }  

 

原文地址:https://www.cnblogs.com/cnblog-long/p/7149488.html