最近开始做WebService的一些项目,整理了一些自己用到的,跟大家分享下~~
1. 新建一个项目WebService,包的命名空间为org.apache.axis2.axis2userguide,包里面有HelloWorld.java
HelloWorld.java
package org.apache.axis2.axis2userguide;
public class HelloWorld {
public String sayHello(String user) {
return user;
}
}
2. 生成WSDL文件
新建一个批处理文档,里面的内容如下:
@echo off
set JAVA_HOME=D:\Weblogic\myjavahome\jdk1.6.0_22
set AXIS2_HOME=F:\DevelopLibs\axis2-1.6.2
set CLASSPATH=F:\Axis2demo\demo\classes;%CLASSPATH%
其中,JAVA_HOME为JDK的路径,AXIS2_HOME为AXIS2的路径,CLASSPATH为HelloWorld.class的路径。请确保JDK和AXIS2配置正确。
运行%AXIS2_HOME%\bin\java2wsdl -cp . -cn org.apache.axis2.axis2userguide.HelloWorld -of axis2userguide.wsdl
运行后会生成 axis2userguide.wsdl,路径在(本例是在 F:\Axis2demo\wsdl)
3. 生成服务器端程序,运行 %AXIS2_HOME%\bin\wsdl2java.bat -uri axis2userguide.wsdl -p org.apache.axis2.axis2userguide -o build -d adb -s -wv 1.6.2 -ss -sd
运行后会生成build文件夹,路径在 F:\Axis2demo\wsdl
依次打开build\src\org\apache\axis2\axis2userguide,找到HelloWorldSkeleton.java,加入服务器端响应的逻辑代码:(浅蓝色部分为增加的逻辑代码)
HelloWorldSkeleton.java
package org.apache.axis2.call;
public class HelloWorldSkeleton {
public org.apache.axis2.call.SayHelloResponse sayHello(
org.apache.axis2.call.SayHello sayHello) {
SayHelloResponse res = new SayHelloResponse();
res.set_return(sayHello.getUser().toString() + " say hello to WebService");
return res;
}
}
在控制台,路径转到F:\Axis2demo\wsdl\build下,运行ant jar.server,运行成功后,会在build\lib下生成HelloWorld.aar
4. 部署我们的服务器端程序,拷贝HelloWorld.aar到(你的电脑Tomcat容器的安装路径)...\Apache Software Foundation\Tomcat 6.0\webapps\axis2\WEB-INF\services下,在services.list中,添加HelloWorld.aar
运行tomcat,在http://localhost:8080/axis2/services/listServices中会看到发布的WebService
5. 最后一步:创建客户端程序
控制台转到F:\Axis2demo\wsdl路径下,运行
%AXIS2_HOME%\bin\WSDL2Java -uri axis2userguide.wsdl -p org.apache.axis2.axis2userguide -o build -d adb -s
运行结果,会在F:\Axis2demo\wsdl\build\src\org\apache\axis2\axis2userguide下生成HelloWorldStub.java
6. 调试WebService,在F:\Axis2demo\wsdl\build\src\org\apache\axis2\axis2userguide下新建一个Client.java来call我们发布的WebService
Client.java
package org.apache.axis2.call;
public class Client {
public static void main(String[] args) {
try {
HelloWorldStub stub = new HelloWorldStub(
"http://localhost:8080/axis2/services/HelloWorld");
sayHello(stub);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void sayHello(HelloWorldStub stub){
try{
SayHello req = new SayHello();
req.setUser("ZW");
SayHelloResponse res = stub.sayHello(req);
System.out.println(res.get_return().toString());
} catch(Exception e){
e.printStackTrace();
}
}
}
运行Client.java,会得到如下结果。
到此,发布WebService和Call WebService都成功!
希望对你有所帮助
相关推荐
Axis2 发布 WebService Axis2 是一个基于 Java 的开源 Web 服务框架,由 Apache 软件基金会开发和维护。Axis2 提供了一个灵活的框架来开发、部署和管理 Web 服务,支持多种协议和数据格式,包括 SOAP、REST、JSON ...
总结起来,使用Axis2发布Web服务和生成客户端代码调用服务是一个标准化的过程,涉及到服务的编写、打包、部署以及客户端的代码生成和调用。了解并熟练掌握这一过程,对进行Java Web服务开发至关重要。在实际开发中,...
axis2-1.4.1-war.zip axis2-eclipse-codegen-wizard-1.4.zip axis2-eclipse-service-archiver-wizard-1.4.zip axis2创建webservice.txt(教程链接)
【Eclipse + Axis2 发布 WebService】是一个关于在Eclipse集成开发环境中使用Apache Axis2框架创建并发布Web服务的教程。Apache Axis2是用于构建Web服务和Web服务客户端的高性能、灵活且可扩展的开源框架。以下是...
本篇文章将深入探讨AXIS2发布Web服务的过程以及相关知识点。 首先,理解AXIS2的基础架构是至关重要的。AXIS2采用了模块化设计,允许开发者根据需求选择不同的模块进行组合。这些模块包括消息引擎、传输层、编码器、...
标题 "Axis2 发布Web服务" 涉及到的是使用Apache Axis2框架创建和部署Web服务的过程。Apache Axis2是Java平台上的一个强大的Web服务引擎,它支持SOAP 1.1、1.2和RESTful Web服务。下面将详细介绍Axis2在发布Web服务...
标题“Java-tomcat-axis2开发webservice返回json数据”涉及的是使用Java、Tomcat服务器以及Axis2框架来创建Web服务,并返回JSON格式的数据。这是一个常见的技术组合,用于构建RESTful API或者提供服务化接口。下面...
本篇文章将深入探讨如何使用Axis2发布Web服务,并特别关注其中的Spring发布方式。 首先,让我们了解基本的Axis2发布Web服务的流程。Axis2提供了两种主要的发布方法:通过XML配置和通过编程方式。XML配置方式通常...
本文将深入探讨如何使用Axis2发布Web服务以及进行客户端调用,这包括新手教程、详细的说明文档,以及实际操作的实例。 1. **Axis2简介** - Axis2是Apache软件基金会的项目,它是用于构建和部署Web服务的平台,支持...
axis2-1.4.1-war.zip axis2-eclipse-codegen-wizard-1.4.zip axis2-eclipse-service-archiver-wizard-1.4.zip axis2创建webservice.txt
本文将深入探讨如何使用Axis2发布一个简单的Web服务,并提供相关知识点。 1. **Web服务基础**: Web服务基于开放标准,如SOAP(Simple Object Access Protocol)和WSDL(Web Services Description Language),...
axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例
本文将深入探讨使用Axis2发布Web服务包的过程,以及相关的技术要点。 首先,我们要理解什么是Web服务。Web服务是一种基于互联网的软件应用,允许不同系统间的交互和数据交换。它们通过标准的协议(如SOAP、REST)和...
本教程将详细讲解如何使用Axis2发布Web服务,并基于提供的"LoginTest"项目进行说明。 首先,让我们理解Web服务的基本概念。Web服务是一种通过互联网进行通信的应用程序,它允许不同的系统之间交换数据。Axis2是...
### Axis2 下发布 WebService 方法详解 #### 一、WebService 概述 WebService 是一种用于在不同系统之间进行通信的技术,它可以将一个类中的某些方法公开出去,供网络上的任何客户端进行调用。WebService 主要基于...
### Axis2实现WebService知识...通过以上步骤,可以实现一个完整的基于Axis2的WebService应用,包括服务端的发布和客户端的调用。这为开发者提供了一个清晰的指南,帮助他们更好地理解和使用Axis2进行WebService开发。
4. **部署和发布服务**:如果我们要在Spring中发布一个Web服务,可以使用Axis2的`SpringServiceDeployer`。这需要将服务类和相关的配置文件打包成一个Axis2模块(.aar文件),然后部署到Axis2服务器上。 5. **测试...
1. **Apache Axis2**: Axis2是Apache SOAP(Simple Object Access Protocol)项目的第二代实现,用于处理SOAP消息和创建Web服务。它提供了高性能、可扩展性和灵活性,支持多种协议,如HTTP、SMTP、JMS等,并可以处理...