建议用XFire,返回一个java对象就可以了呀。

解决方案 »

  1.   

    XFire 代码:
    /** 
    * 作者:曹坤 
    * 日期:2007-5-16 
    */ package com.export; import java.util.Collection; import org.springframework.dao.DataAccessException; 
    /** 
    * @author 曹坤 

    */ 
    public interface Iquery { 
    public Collection GetYspb(String gzrq) throws DataAccessException; public Collection GetYspb(String gzrq,Long xzpb) throws DataAccessException; public Collection GetYgdm(String ygdm) throws DataAccessException; 

    Iquery.aegis.xml文件 <?xml version="1.0" encoding="UTF-8"?> 
    <mappings> 
        <mapping> 
            <method name= "GetYspb" > 
                <return-type componentType= "com.exportclass.HisYspb" /> 
              
            </method>          <method name="GetYgdm"> 
            <return-type componentType="com.exportclass.HisYgdm"> </return-type> 
            </method>        
          
            
        </mapping> 
        
        
    </mappings> 
      

  2.   

    可以用xfire或axis实现,看你怎么做。
    xfire:如果jdk是1.4,就使用6楼的方法,jdk是1.4以上版本,生成客户端调用或直接使用动态代理。
    axis:生成客户端后直接调用。
    如果返回的结果是一个,放在bean里返回。如果是多个,分别放在bean里,add到list里返回。
    现在eclipse里都有xfire和axis的插件,看你哪个用的顺手就用哪个,原理都是一样的。
    我基本上都是用xfire1.1发布服务,axis1.4生成客户端,干净利落。
    用xfire1.1生成客户端也可以,但是操作没有axis方便。
    用axis1.4发布服务也可以,但是没有xfire1.1发布方便,只要几行搞定。
    反正楼主随意组合挑选。
      

  3.   

    现在XFIRE改为CXF了。正在APACHE下孵化
    Axis2也正在APACHE下孵化。
    建议用JDK6自带的JAX-WS。
    毕竟万变不离其宗
      

  4.   

    呵呵,如果用bean返回的话,在跨平台的时候会有点处理上的麻烦,建议进出都用xml,这样以string的形式来传递的话,可以避免不少数据类型的问题,对以后的扩充也有裨益.