JDK版本:1.7update65
Eclipse版本:Juno Service Release 2(4.2.2)
插件安装过程及WSDL文件生成过程参见:http://blog.csdn.net/a19881029/article/details/40194787
1,下载Axis2的1.6.2版本二进制压缩包,下载路径为:http://axis.apache.org/axis2/java/core/download.cgi,下载完成后解压,以供之后使用
2,创建一个普通的Java工程,用来存放自动生成的Web Service服务端/客户端代码
3,选择Eclipse菜单栏中的File -> New -> Other...,在弹出的对话框中选择Axis2 Code Generator,然后选择Next
4,选择通过WSDL文件生成Java源代码
5,选择生成好的WSDL文件
6,如果Codegen option选择default,则不可修改下面的配置项,默认生成Web Service客户端,如果Codegen option选择custom,则可以手动修改下面的配置项
7,选择将自动生成的Java代码保存在Eclipse当前工作空间中的特定工程中
8,虽然Axis2依赖的jar包加到了工程中,但是并没有添加到工程的Build Path中,需要手动添加一下
9,客户端生成代码如下:
生成的时候选择同时生成同步方法和异步方法,同步方法比较简单,就不多说了,这里看下MathStub类中异步方法是如何处理的
- ......
- public void startadd(
- com.sean.Add add2,
- final com.sean.MathCallbackHandler callback)
- throws java.rmi.RemoteException{
- ......
- callback.receiveResultadd(
- (com.sean.AddResponse)object);
- } catch (org.apache.axis2.AxisFault e) {
- cllback.receiveErroradd(e);
- }
- ......
MathCallbackHandler是个抽象方法
- ......
- /**
- * auto generated Axis2 call back method for add method override this method
- * for handling normal response from add operation
- */
- public void receiveResultadd(com.sean.AddResponse result) {}
- /**
- * auto generated Axis2 Error handler override this method for handling
- * error response from add operation
- */
- public void receiveErroradd(java.lang.Exception e) {}
- ......
综上,实现了自己的异常处理类
- package com.sean;
- public class MyMathCallbackHandler extends MathCallbackHandler {
- @Override
- public void receiveResultadd(AddResponse result) {
- super.clientData = result;
- }
- @Override
- public void receiveErroradd(Exception e) {
- System.out.println(e.getMessage());
- }
- }
接口调用方式如下
- package com.sean;
- public class Test {
- public static void main(String[] args) throws Exception {
- Math math = new MathStub("http://127.0.0.1:8888/mockMathSoap12Binding");
- //sync
- Add add1 = new Add();
- add1.setArgs0(1);
- add1.setArgs1(2);
- AddResponse resp1 = math.add(add1);
- System.out.println(resp1.get_return());
- //async
- Add add2 = new Add();
- add2.setArgs0(5);
- add2.setArgs1(6);
- MathCallbackHandler callback = new MyMathCallbackHandler();
- math.startadd(add2, callback);
- //As the method is not sync, can't get result immediately.
- Thread.sleep(1000);
- AddResponse resp2 = (AddResponse)callback.getClientData();
- System.out.println(resp2.get_return());
- }
- }
10,服务端生成代码如下:
是否选择生成Sleleton的接口类都可以,如果勾选,则会多生成一个MathSkeletonInterface类,MathSkeleton类变为该接口类的实现类,在MathMessageReceiverInOut中,由直接调用MathSkeleton类改为调用MathSkeletonInterface接口类,除此之外没有别的变化
MathSkeleton类中需要添加服务端的处理逻辑
- /**
- * MathSkeleton.java
- *
- * This file was auto-generated from WSDL
- * by the Apache Axis2 version: 1.6.2 Built on : Apr 17, 2012 (05:33:49 IST)
- */
- package com.sean;
- public class MathSkeleton implements MathSkeletonInterface {
- public com.sean.AddResponse add(com.sean.Add add0) {
- int a = add0.getArgs0();
- int b = add0.getArgs1();
- int result = a + b;
- AddResponse resp = new AddResponse();
- resp.set_return(result);
- return resp;
- }
- }
相关推荐
通过以上步骤,开发者可以方便地在Eclipse环境中使用Axis1.4插件实现Web Service的发布和消费。需要注意的是,这只是一个基本示例,实际开发中可能需要处理更复杂的业务逻辑、数据类型转换以及错误处理等。 此外,...
标题提及的“axis2支持webservice 自动生成代码客户端服务端代码插件”,是指Apache Axis2为Eclipse IDE提供的一套工具,旨在简化Web服务的开发流程。这个插件允许开发者通过WSDL(Web Services Description ...
Eclipse中使用Axis2插件生成Web Service服务端/客户端
在本案例中,“简单Web Service服务端和客户端例子”是一个教程,教你如何创建和使用基本的Web服务。我们将深入探讨服务端和客户端的实现,并讨论相关的关键技术。 1. **服务端开发**: - **SOAP (Simple Object ...
Eclipse的AXIS插件则为开发者提供了一种在集成开发环境中方便地构建、调试和部署Web Services的解决方案。本文将深入探讨AXIS插件在Eclipse中的应用及其相关知识点。 一、AXIS插件简介 AXIS插件是Eclipse IDE的一个...
1. axis2-eclipse-codegen-plugin-1.6.4.zip:这是一个代码生成插件,允许开发者从WSDL(Web服务描述语言)文件自动生成Java客户端和服务端代码。通过这个插件,你可以轻松地从WSDL导入并生成服务接口、实现类以及...
Eclipse的Axis2插件是用于在Eclipse集成开发环境中创建、管理和调试基于Apache Axis2服务的工具。Apache Axis2是流行的Web服务引擎,它提供了高性能、灵活且可扩展的框架来实现SOAP(简单对象访问协议)服务。下面将...
### Eclipse中使用Axis服务器搭建Web Service 的详细过程与知识点 #### 一、环境准备与配置 **1.1 软件下载准备** 为了在Eclipse中使用Axis服务器搭建Web Service,首先需要准备好一系列必要的软件资源。具体包括...
标题中的"axis2-eclipse-codegen-plugin-1.6.2和axis2-eclipse-service-plugin-1.6.2"指的是两个与Apache Axis2相关的Eclipse插件:Axis2代码生成插件和Axis2服务插件,它们是版本1.6.2的。Apache Axis2是一个流行的...
标题中的“Axis2 Eclipse 插件”指的是在Eclipse集成开发环境中用于支持Apache Axis2服务的扩展工具。Apache Axis2是流行的Web服务引擎,它提供了一种高效且灵活的方式来创建和部署SOAP(简单对象访问协议)服务。...
1. `axis2-eclipse-codegen-wizard.zip`:这是一个代码生成向导,它的主要功能是从现有的WSDL(Web Service Description Language)文件中自动生成客户端和服务端的Java代码。这大大减轻了开发者的负担,因为他们...
本文将深入探讨Eclipse Axis2插件的关键功能、优势以及如何在Eclipse集成开发环境中安装和使用。 1. **关键功能** - **代码生成**:Eclipse Axis2插件能够自动生成服务接口、实现类和服务部署文件,极大地减少了...
Eclipse Axis2 集成插件是开发Web服务的重要工具,它允许开发者在Eclipse IDE环境中便捷地创建、测试和部署基于Apache Axis2的Web服务。Apache Axis2是Java世界中广泛使用的Web服务引擎,它提供了高性能、灵活且可...
在本文中,我们将深入探讨“Axis2 1.7.4 Eclipse插件”,以及如何利用这些插件在Eclipse集成开发环境中(IDE)便捷地创建和管理Web服务。 标题中的“Axis2 1.7.4 Eclipse插件”指的是针对Apache Axis2版本1.7.4的两...
本文将深入探讨如何使用Axis1.4.jar包以及Eclipse IDE来实现WSDL(Web Service Description Language)和服务端代码之间的相互转换。 首先,让我们了解WSDL。WSDL是一种XML格式的规范,用于定义网络服务的接口,...
标题提到的"axis2-eclipse CodeGen和Service插件1.7.9"就是针对Axis2的两个关键插件,它们为开发者提供了在Eclipse中方便地生成和管理Web服务的能力。 1. **Axis2 Eclipse CodeGen插件**: 这个插件的主要功能是...
1. **Axis2 Eclipse Codegen Wizard**: 这个插件是用来生成Web服务客户端或服务器端代码的。当你有了一个WSDL(Web服务描述语言)文件时,通过这个向导,可以自动生成对应的Java代码,包括服务端的处理类和服务接口...
- `axis2-eclipse-codegen-wizard.zip`:用于生成 Web 服务客户端和服务器端代码。 - `axis2-eclipse-service-archiver-wizard.zip`:用于将 Axis2 Web 服务打包成 WAR 文件以便部署。 - `axis2-1.5.1-bin.zip`:...
描述中提到的"Eclipse的Axis插件,用来生成Web Service WSDL 服务端客户端代码",这意味着该插件具备自动代码生成的能力。WSDL(Web Services Description Language)是Web服务的标准接口描述语言,定义了服务如何被...
这通常涉及到使用Axis的wsdl2java工具,或者在Eclipse/MyEclipse中使用"Generate Client"功能。 总结起来,通过Eclipse或MyEclipse的Axis插件,我们可以快速、便捷地开发和部署SOAP Web服务。从创建项目到编写接口...