`

webservice开发

阅读更多

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-uapstudio webservice开发配置说明文档 用友NC65-erp开发工具uapstudio进行开发webservice时,需要对开发工具进行必要的设置。以下是uapstudio中的webservice开发配置说明: 一、UAPStudio中的webservice...

    webservice 开发过程 详解

    ### WebService开发过程详解 #### 一、概述 本文将详细介绍如何使用Eclipse集成开发环境(IDE)结合Tomcat服务器及Axis框架来开发一个简单的WebService应用。对于初学者来说,这是一个很好的入门指南,通过本教程...

    EAS-WebService开发指南.pdf

    EAS-WebService开发指南 本文档旨在指导开发者如何使用EAS-WebService开发指南来构建Web服务。下面将对该指南中的每个步骤进行详细的解释和分析。 Step 1: 设计开发工具中新建一个Facade对象 在EAS-WebService...

    pb11+webservice开发分布式三层应用 例程

    提供的“pb11+webservice开发分布式三层应用.doc”文档很可能会包含详细的步骤、示例代码和注意事项,指导开发者如何实际操作这个项目。建议仔细阅读并按照文档进行实践。 **8. 使用说明** “下载使用说明.htm”...

    基于.net环境的WebService开发资料

    本开发资料主要围绕.NET Framework下的WebService开发进行,包括C#语言的实现和源码分析。下面将详细阐述相关知识点。 1. **SOAP与WSDL** - SOAP(Simple Object Access Protocol)是WebService的核心协议,用于...

    webservice开发所需要的包

    综上所述,"webservice开发所需要的包"指的是使用Spring和CXF框架开发Web服务时所需的Java库,这些库以JAR文件的形式存在,版本为3.1.16。理解这些概念和流程对于成功地创建、运行和维护Web服务至关重要。

    WebService开发手册

    WebService 开发手册 WebService开发指南

    金蝶EAS_V7.5_WebService开发指南_EASwebservice开发_金蝶开发_

    3. **生成客户端代理类**:使用WSDL文件,开发者可以使用各种开发工具(如Java的Axis、.NET的Wsdl.exe等)生成客户端代理类,这些类封装了调用Web Service的具体细节,简化了开发工作。 4. **配置安全认证**:金蝶...

    pb11+webservice开发分布式三层应用

    本教程“pb11+webservice开发分布式三层应用”着重讲解如何利用PowerBuilder 11和Webservice来构建分布式三层架构的应用程序。三层架构通常包括表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和...

    WebService开发指南

    【WebService开发指南】这篇文章主要介绍了基于Java的Axis2框架如何进行WebService的开发。Axis2是Apache组织提供的一个用于构建和部署Web服务的高级框架,它作为Axis1的升级版,提供了更多的特性和优化。 首先,...

    pb12 WEBSERVICE 开发 源码

    在本压缩包文件中,"pb12 WEBSERVICE 开发 源码" 提供的是使用PowerBuilder 12进行WEBSERVICE开发的相关源代码。下面我们将详细探讨PB12与WEBSERVICE开发的相关知识点。 1. PowerBuilder 12基础: - PowerBuilder ...

    WebService开发手册.doc

    WebService开发手册 WebService开发手册是指使用Web Service技术开发应用程序的指南。Web Service是一种基于XML的,平台无关的,跨语言的分布式应用程序的架构。它允许不同的应用程序之间相互通信和交换数据,从而...

    Webservice开发手册.pdf

    【Webservice开发手册.pdf】是关于Webservice开发的详细指南,涵盖了从项目构建到服务发布、客户端调用的全过程。以下是对手册中的关键知识点的详细解释: 1. **准备依赖库**: 开发Webservice时,需要引入必要的...

    NC57 webservice 开发插件

    一旦安装完成,插件的相关功能将在Eclipse的菜单、工具栏或者右键快捷菜单中体现,为开发人员提供无缝的webservice开发体验。 总之,“NC57 webservice 开发插件”是针对用友NC57平台的一款强大工具,它极大地提升...

    eclipse axis webservice 开发

    eclipse axis webservice 开发 eclipse下使用axis2 开发webservice系统

Global site tag (gtag.js) - Google Analytics