`
lovetocool
  • 浏览: 19892 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Java6 WebService 使用集合

阅读更多
集合是一种非常有用的数据类型,基本上所有的程序离不开集合数据类型。在Axis2、XFire中使用集合,往往存在一些问题。这里测试下JWS中使用集合的情况。甚至有人网上说JWS使用List会出问题,还要变通下,google一下能搜出好多同样内容的文章。这里我也试试,看有什么问题! 实际上我告诉大家,JWS使用List没问题,不信看看下面的例子。
 
1、写JWS
 
package lavasoft;

import lavasoft.wsclient.Foo;
import lavasoft.wsclient.Java6WS;
import lavasoft.wsclient.Java6WSService;
import lavasoft.wsclient.UserBean;

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

/**
* 测试Java6 WS生成的客户端代码
*
* @author leizhimin 2009-11-16 17:05:00
*/

public class TestClient {
        public static void main(String[] args) {
                //创建一个客户端服务对象
                Java6WS java6WS = new Java6WSService().getJava6WSPort();

                System.out.println("----------java6WS.doSomething1-------------");
                //调用服务方法,并得到方法返回值
                List<UserBean> listUserBean = java6WS.doSomething1("zhangsan", "华中路", true);
                //打印服务的返回值
                for (UserBean userBean : listUserBean) {
                        System.out.println(userBean.getUsername() + " " + userBean.getAddress() + " " + userBean.isFlag());
                }

                System.out.println("----------java6WS.doSomething2-------------");
                List<Foo> listFoo = new ArrayList<Foo>();
                Foo f1 = new Foo();
                f1.setName("张三");
                f1.setSex("Man");
                Foo f2 = new Foo();
                f2.setName("李四");
                f2.setSex("Man");
                listFoo.add(f1);
                listFoo.add(f2);
                String sf = java6WS.doSomething2(listFoo);
                System.out.println(sf);
        }
}
 
package lavasoft.server;

/**
* Created by IntelliJ IDEA.
*
* @author leizhimin 2009-11-16 17:09:46
*/

public class Foo {
        private String name;
        private String sex;

        public Foo() {
        }
......
 
package lavasoft.server;

/**
* 用户信息
*
* @author leizhimin 2009-11-16 16:43:35
*/

public class UserBean {
        private String username;
        private String address;
        private boolean flag;

        public UserBean() {
        }

......
 
2、生成客户端代码
 
 
3、写测试类
 
package lavasoft;

import lavasoft.wsclient.Foo;
import lavasoft.wsclient.Java6WS;
import lavasoft.wsclient.Java6WSService;
import lavasoft.wsclient.UserBean;

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

/**
* 测试Java6 WS生成的客户端代码
*
* @author leizhimin 2009-11-16 17:05:00
*/

public class TestClient {
        public static void main(String[] args) {
                //创建一个客户端服务对象
                Java6WS java6WS = new Java6WSService().getJava6WSPort();

                System.out.println("----------java6WS.doSomething1-------------");
                //调用服务方法,并得到方法返回值
                List<UserBean> listUserBean = java6WS.doSomething1("zhangsan", "华中路", true);
                //打印服务的返回值
                for (UserBean userBean : listUserBean) {
                        System.out.println(userBean.getUsername() + " " + userBean.getAddress() + " " + userBean.isFlag());
                }

                System.out.println("----------java6WS.doSomething2-------------");
                List<Foo> listFoo = new ArrayList<Foo>();
                Foo f1 = new Foo();
                f1.setName("张三");
                f1.setSex("Man");
                Foo f2 = new Foo();
                f2.setName("李四");
                f2.setSex("Man");
                listFoo.add(f1);
                listFoo.add(f2);
                String sf = java6WS.doSomething2(listFoo);
                System.out.println(sf);
        }
}
 
4、启动运行
 
 
从上面的测试可以看出,JWS使用Java集合并没有问题,如果我们的WebService服务端和客户端均使用Java语言做开发,集合会得到完美支持。
如果的客户端使用了别的语言,比如C++、C#等,那就不一定了。
 

本文出自 “熔 岩” 博客,请务必保留此出处http://lavasoft.blog.51cto.com/62575/228531

分享到:
评论

相关推荐

    java调用json参数的webservice

    为了使得Java客户端能够调用WebService服务,需要使用一些工具,例如JAX-WS(Java API for XML Web Services),它是Java SE的一部分,用于创建WebService客户端和服务端。 综上所述,通过Java调用带有JSON参数的...

    java调用webservice实例

    1. **导入必要的类库**:首先,代码导入了多个类库,包括`java.util`下的集合类,`javax.xml.namespace`下的`QName`用于命名空间操作,`org.apache.axis.client`下的`Call`和`Service`类,这些是Apache Axis的核心类...

    Java发布和调用WebService

    【Java发布和调用WebService】知识点详解 Java WebService是一种基于标准的、平台无关的通信方式,用于不同系统之间的交互。在Java中,主要通过JAX-WS(Java API for XML Web Services)框架来实现WebService的发布...

    webservice获取List案例

    综上所述,本案例涉及了WebService接口设计、泛型的使用、XML配置和数据序列化等关键知识点,这对于任何需要通过网络交互数据的Java开发者来说都是重要的技能。通过研究提供的代码和理解其背后的原理,你可以掌握...

    Java+Webservice调用方式详解

    Java作为一种广泛使用的编程语言,在开发基于Webservice的应用时具有天然优势。本文将详细介绍两种主流的Java调用Webservice的方式:Axis和SOAP,并通过具体代码示例进行阐述。 #### 二、Axis 方式调用 Webservice ...

    web Service 传递集合(实例)

    实践中,我们需要结合具体的技术栈(如.NET、Java等)和框架(如ASP.NET Web Services、WCF、RESTful APIs等)来应用这些知识,以实现稳定可靠的集合数据交换。如果你在实现过程中遇到问题,可以参考提供的QQ群或...

    java webService 中文与英文教程

    总的来说,这个教程集合为学习Java WebService提供了全面的资源,无论是中文还是英文,都包含了从基础到进阶的内容,可以帮助开发者全面理解和掌握Web服务的开发和应用。对于想要提升这方面技能的人来说,这是一个...

    java之webservice_aegis.xml学习

    ### Java之WebService_Aegis.xml详解 #### 一、概述 `aegis.xml`配置文件主要用于在Web服务(尤其是使用了XFire框架的情况下)中定义如何处理复杂的数据类型,特别是那些集合类型的参数或返回值。通过配置`aegis....

    myeclipse webservice 常用jar包集合

    6. **部署和测试**:在MyEclipse中,开发完Web服务后,可以通过内置的Tomcat服务器进行部署,并使用内置的Web服务测试工具进行功能验证和性能测试。 总之,"myeclipse webservice 常用jar包集合"是一个包含了...

    JAVA WebService服务jar包

    Java WebService服务jar包是Java开发中用于实现Web服务的重要工具集合。Web服务是一种通过互联网交换数据和执行业务逻辑的方法,它允许不同系统之间进行互操作。在Java中,我们通常使用SOAP(Simple Object Access ...

    SHH框架集合webservice

    SHH框架集合Webservice是一个专为Java开发人员设计的整合性解决方案,旨在简化Web服务的开发、部署和消费。这个框架结合了Spring、Hibernate和Struts(SHH)这三个流行的开源技术,为构建高效、可扩展的企业级应用...

    WebService传递对象与集合问题.rar

    在Java中,可以使用JAXB(Java Architecture for XML Binding)来实现;在.NET中,有XmlSerializer类用于此目的。 2. **复杂数据类型支持**:SOAP规范允许定义复杂数据类型,即XSD(XML Schema Definition)中的...

    WebService资料文件下载

    "Java WebService开发系列-基础篇.ppt"是一个PPT教程,可能从基础出发,介绍了使用Java进行WebService开发的基本步骤和技术。 最后,"Xifire+Jibx_刘洪.ppt"可能涉及了XFire(后来成为Apache CXF的一部分)和JiBX...

    Tomcat上部署WebService服务所需要引用的jar包集合

    本资源集合提供的"Jax-ws RI"(Java API for XML Web Services Reference Implementation)正是用于实现SOAP协议的Java工具包,它为开发和部署WebService提供了全面的支持。 首先,让我们详细了解一下JAX-WS(Java ...

    WebService课程作业

    4. **Java编程基础**: 对于这个项目,学生需要具备扎实的Java编程基础,包括面向对象编程、异常处理、集合框架的使用、IO流以及多线程等。 5. **测试与调试**: 为了确保服务的正确性,学生还需要了解单元测试和集成...

    ksoap2调用webService服务 包含自定义参数 自定义参数集合等

    - 自定义类型参数集合:可以使用List或Array SoapObject来表示集合,每个元素都是自定义类型的SoapObject。 6. 示例代码片段 ```java // 创建SoapObject表示请求 SoapObject request = new SoapObject...

    java_Webservice[文].pdf

    Apache Axis是Java中广泛使用的SOAP库,它允许开发者创建和调用Web服务。在示例中,`org.apache.axis.client.*`包下的类被用来创建和执行SOAP请求。 2. **Service类和Call接口**: - `Service`类是Apache Axis的...

    个人总结的webservice jar包

    总之,这个“个人总结的webservice jar包”集合了实现Java Web服务所需的关键库,覆盖了从服务创建、部署到客户端消费的全过程,是学习和实践Web服务开发的宝贵资源。不过,要注意的是,随着技术的发展,新的框架如...

    2023年经典java道面试题集合

    Java 提供了多种网络互联方式,例如 Socket 编程、RMI(Remote Method Invocation)、WebService 等。 三、后端开发 后端开发是指服务器端的开发,负责处理客户端的请求和响应。Java 是一种流行的后端开发语言,...

Global site tag (gtag.js) - Google Analytics