http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 4469|回复: 0

[Java] 使用Axis开发Web Service程序

[复制链接]
发表于 2014-1-9 11:25:50 | 显示全部楼层 |阅读模式
使用Axis开发Web Service程序

  一、Axis环境的安装
  1、安装环境 J2SE SDK 1.4Tomcat 5.0eclipse 3.2
  2、到http://xml.apache.org 网站下载Axis安装包。
  3、将Axis相关包文件放在WEB-INF\lib目录下。
  4Axis可选的包:activation.jar mail.jar xmlsec-1.4.Beta1.jar拷贝到WEB-INF目录下,生成客户端时候需要使用。
  Axis支持三种web service的部署和开发,分别为:
  1Dynamic Invocation Interface DII
  2Dynamic Proxy方式
  3Stubs方式
  前两种方式我就不介绍了,同事告诉我他们自己都不使用前两种方式,他们建议我们使用Stubs方式,因此我就主要就介绍一下第三种方式。注意,我自己的Java源代码是放在D\workspace\test\目录下,Axis相关包文件放在D\workspace\test\WEB-INF目录下。
  二、编写wsdd发布web服务,编写stubclient访问web服务
  1、编写服务端程序serverSayHello.java,编译server.SayHello.java
package server;
public class SayHello
{
    public String getName(String name)
    {
        return "hello "+name;
    }
}
  2、编写wsdd文件
  deploy.wsdd文件内容如下:
<deploymentxmlns="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.getName"/>
  <parameter name="allowedMethods" value="*"/>
</service>
</deployment>
  3、发布服务:
  编辑一个deploy.batAxis_Libaxis.jar路径。内容如下:
set Axis_Lib=D:\workspace\test\WEB-INF\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 就会显示服务列表。
  4、生成客户端client stub文件
  在浏览器上访问服务器端的服务,可以下载到WSDL文件,通过Axis的相关工具,可以自动从WSDL文件中生成Web Service的客户端代码。
  编写一个WSDL2Java.bat文件,其内容如下:
set Axis_Lib=D:\workspace\test\WEB-INF\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=D:\workspace\test\src
set Package=server.SayHello
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package%SayHello.wsdl
  执行这个批处理文件就可以生成client stub.
  生成的stub client文件列表为:SayHello.javaSayHelloService.javaSayHelloServiceLocator.javaSayHelloSoapBindingStub.java.
  5、编写客户端程序,编译并执行
  下面是一段junit测试客户端代码。
import java.net.URL;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
public class TestWSClient extends TestCase {
    public TestWSClient(String string) {
        super(string);
    }
    public void SayHelloClient() throwsException {
        SayHelloServiceservice = new SayHelloServiceLocator();
        SayHello_PortType client =service.getSayHello() ;
        String retValue =client.getName("clientname");
        System.out.println(retValue);
    }
    public static Test suite() {
        TestSuite suite = new TestSuite();
        suite.addTest(newTestWSClient("SayHelloClient"));
        return suite;
    }
}
  至此,整个服务器端和客户端的Web Service框架代码就完成了,剩下的就是在里面加入你的业务代码了,怎么样,Web Service并不难开发吧。



1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-4-27 05:38

© 2014-2021

快速回复 返回顶部 返回列表