AXIS进行java的WebService开发
近期由于参与项目涉及到使用JAVA进行WebService进行开发,所以特地在网上查找资料研究了一下,在java中一般是使用Axis框架来进行webservice开发的,Axis比较强大,能自动帮我们生成网络通信的代码,为开发节约了不少时间,在这里特此记录一下,备忘。
一、Axis环境的安装
1、主要软件环境
安装环境 J2SE SDK 1.4.2(或更高版本),Tomcat 5.0(或更高版本),eclipse 3.2(或其他IDE)。
2、下载并配置Axis
到 http://www.ip97.com/apache.org/ws/axis/1_4/axis-bin-1_4.zip网站下载Axis安装包。
下载完成解压后,将 webapps/axis 这个目录复制 %tomcathome%/webapps/ 下然后启动tomcat, 打开URL: http://localhost:8080/axis/ ;
配置成功后将有如下信息,打开 validataion 然后,页面上的信息会告诉你已经有的包和还要差的包,然后根据提示将必须的包下载全.复制到 %tomcathome%/webapps/axis/WEB-INF/lib/目录; 重起tomat ,直到必须的包都装齐.
Jar包列表如下:
xmlsec.jar;wsdl4j-1.5.1.jar;saaj.jar;mail.jar;log4j-1.2.8.jar;jaxrpc.jar;commons-logging-1.0.4.jar;commons-discovery-0.2.jar;axis-ant.jar;axis.jar;activation.jar
Axis支持三种web service的部署和开发,分别为:
1). Dynamic Invocation Interface (DII)
2). Dynamic Proxy方式
3). Stubs方式
一般建议我们使用Stubs方式,因此下面主要就介绍一下第三种方式。注意,我自己的 Java源代码是放在D:"workspace"test"目录下,Axis相关包文件放在D:"workspace"test"WEB-INF目录下。
二、编写wsdd发布web服务,编写stub client访问web服务
1、编写服务端程序
在server包下编写SayHello.java,并编译server.SayHello.java
package server;
public class SayHello
{
public String getName(String name)
{
return "hello "+name;
}
}
2、编写wsdd文件
deploy.wsdd文件内容如下(该文件放在工程目录下的WEB-INF目录下):
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="SayHello" provider="java:RPC">
<parameter name="className" value="server.SayHello "/>
<parameter name="allowedMethods" value="*"/>
</service>
</deployment>
3、发布服务
编辑一个deploy.bat,Axis_Lib为axis.jar路径。内容如下:
set Axis_Lib=."lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Axis_Servlet=http://localhost:8080/test/servlet/AxisServlet
%Java_Cmd% org.apache.axis.client.AdminClient -l%Axis_Servlet% deploy.wsdd
执行这个批处理文件,这时候,如果提示成功的话,访问http://localhost:8080/test/services 就会显示服务列表。
若这个时候报找不到servlet/AxisServlet(404 not found),则是web.xml没有设置好AxisServlet (可以参考axis里目录下的web-inf里面的web.xml的设置【查找AxisServlet查看】)。
4、生成客户端client stub文件
在浏览器上访问服务器端的服务,可以下载到WSDL文件,通过Axis的相关工具,可以自动从WSDL文件中生成Web Service的客户端代码。
编写一个WSDL2Java.bat文件,其内容如下:
set Axis_Lib=."lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=E:"soft"Eclipse"eclipse"workspace"WebServiceTest"src"
set Package= client.SayHello
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% http://localhost:8080/test/services/SayHello?wsdl
执行这个批处理文件就可以生成client stub.生成的stub client文件列表为:SayHello.java,SayHelloService.java,SayHelloServiceLocator.java,SayHelloSoapBindingStub.java
5、编写客户端程序,编译并执行
在client.SayHello包下编写TestClient.java文件,代码如下:
package client.SayHello;
public class TestClient {
public static void main(String[] args) throws Exception {
SayHelloService service = new SayHelloServiceLocator();
SayHello_PortType client = service.getSayHello() ;
String retValue = client.getName("gz!");
System.out.println(retValue);
}
}
分享到:
相关推荐
用友NC65-uapstudio webservice开发配置说明文档 用友NC65-erp开发工具uapstudio进行开发webservice时,需要对开发工具进行必要的设置。以下是uapstudio中的webservice开发配置说明: 一、UAPStudio中的webservice...
### WebService开发过程详解 #### 一、概述 本文将详细介绍如何使用Eclipse集成开发环境(IDE)结合Tomcat服务器及Axis框架来开发一个简单的WebService应用。对于初学者来说,这是一个很好的入门指南,通过本教程...
EAS-WebService开发指南 本文档旨在指导开发者如何使用EAS-WebService开发指南来构建Web服务。下面将对该指南中的每个步骤进行详细的解释和分析。 Step 1: 设计开发工具中新建一个Facade对象 在EAS-WebService...
提供的“pb11+webservice开发分布式三层应用.doc”文档很可能会包含详细的步骤、示例代码和注意事项,指导开发者如何实际操作这个项目。建议仔细阅读并按照文档进行实践。 **8. 使用说明** “下载使用说明.htm”...
本开发资料主要围绕.NET Framework下的WebService开发进行,包括C#语言的实现和源码分析。下面将详细阐述相关知识点。 1. **SOAP与WSDL** - SOAP(Simple Object Access Protocol)是WebService的核心协议,用于...
综上所述,"webservice开发所需要的包"指的是使用Spring和CXF框架开发Web服务时所需的Java库,这些库以JAR文件的形式存在,版本为3.1.16。理解这些概念和流程对于成功地创建、运行和维护Web服务至关重要。
WebService 开发手册 WebService开发指南
3. **生成客户端代理类**:使用WSDL文件,开发者可以使用各种开发工具(如Java的Axis、.NET的Wsdl.exe等)生成客户端代理类,这些类封装了调用Web Service的具体细节,简化了开发工作。 4. **配置安全认证**:金蝶...
本教程“pb11+webservice开发分布式三层应用”着重讲解如何利用PowerBuilder 11和Webservice来构建分布式三层架构的应用程序。三层架构通常包括表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和...
【WebService开发指南】这篇文章主要介绍了基于Java的Axis2框架如何进行WebService的开发。Axis2是Apache组织提供的一个用于构建和部署Web服务的高级框架,它作为Axis1的升级版,提供了更多的特性和优化。 首先,...
在本压缩包文件中,"pb12 WEBSERVICE 开发 源码" 提供的是使用PowerBuilder 12进行WEBSERVICE开发的相关源代码。下面我们将详细探讨PB12与WEBSERVICE开发的相关知识点。 1. PowerBuilder 12基础: - PowerBuilder ...
WebService开发手册 WebService开发手册是指使用Web Service技术开发应用程序的指南。Web Service是一种基于XML的,平台无关的,跨语言的分布式应用程序的架构。它允许不同的应用程序之间相互通信和交换数据,从而...
【Webservice开发手册.pdf】是关于Webservice开发的详细指南,涵盖了从项目构建到服务发布、客户端调用的全过程。以下是对手册中的关键知识点的详细解释: 1. **准备依赖库**: 开发Webservice时,需要引入必要的...
一旦安装完成,插件的相关功能将在Eclipse的菜单、工具栏或者右键快捷菜单中体现,为开发人员提供无缝的webservice开发体验。 总之,“NC57 webservice 开发插件”是针对用友NC57平台的一款强大工具,它极大地提升...
eclipse axis webservice 开发 eclipse下使用axis2 开发webservice系统