zoukankan      html  css  js  c++  java
  • 使用AXIS开发Web Service的示例

    1)先下载Axis的文件包 :http://ws.apache.org/axis/
    2)新建web工程 名称为:axis

    拷贝Axis包中 webapps/axis 目录中的所有文件到工程目录的 webroot 目录中,
    然后 刷新 工程

    新建一个 java 文件,文件名称为:HelloClient,文件内容如下:

    import java.util.List;
    import java.util.ArrayList;
    public class Hello
    {
        public String getName(String name)
        {
            return "Hello "+ name;
        }
        public List getList()
        {
         List list= new ArrayList();
         list.add(0,"aa");
         list.add(1,"bb");
         list.add(2,"cc");
         return list;
        }
    }
    现在拷贝 HelloClient.java 到 webroot 目录中,并改名称为 Hello.jws

    现在布署工程,并启动服务

    启动浏览器并打开以下链接

    http://localhost:8080/axis/Hello.jws?wsdl

    3)新建一个测试类:代码如下

    import java.util.ArrayList;
    import java.util.List;

    import javax.xml.namespace.QName;
    import org.apache.axis.client.Call;
    import org.apache.axis.client.Service;
    public class testAXIS
    {
        public static void main(String[] args)
        {
            try
            {
                String endpoint = "http://localhost:9000/axis/Hello.jws";
                Service service = new Service();
               
                Call call = null;
                call = (Call) service.createCall();
               
                call.setOperationName(new QName(endpoint, "getName"));
                call.setTargetEndpointAddress(new java.net.URL(endpoint));
                String str = (String) call.invoke(new Object[] { " jian" });
                System.out.println(str);
                
                //这里是复杂数据类型,需要另外配置call.invoke才能转换
                //call.setOperationName(new QName(endpoint, "getList"));
               // call.setTargetEndpointAddress(new java.net.URL(endpoint));
                //List list = (ArrayList) call.invoke(new Object[] {});
               // System.out.println(list.size());
               
            }
            catch (Exception ex)
            {
                ex.printStackTrace();
            }
        }
    }
    注意需要5个JAR包:axis.jarsaaj.jarjaxrpc.jarcommons-logging-1.0.4.jarcommons-discovery-0.2.jar

  • 相关阅读:
    C# 封装miniblink 使用HTML/CSS/JS来构建.Net 应用程序界面和简易浏览器
    C# Winform实现炫酷的透明动画界面
    造轮子了!NETCore跨平台UI框架,CPF
    用HTML,Vue+element-UI做桌面UI
    造轮子,模仿WPF的UI框架,还没完善。。。
    C# Winform开发以及控件开发的需要注意的,被人问怕了,都是基础常识
    sublime 下面开发
    《快学Scala》
    linux中bin与sbin目录的作用及区别介绍
    hadoop深入研究:(十三)——序列化框架
  • 原文地址:https://www.cnblogs.com/willpower/p/1203256.html
Copyright © 2011-2022 走看看