就是返回一个字符串,如"<?xml 1.0><person><age>12</age></person></xml>";

解决方案 »

  1.   

    是啥意思啊,你web services 是用什么做的啊,如果用axis的话
    java调用web services代码,和java实现web services的代码
    都是axis自己生成的,网上很多例子。
    给java的例子,给你一个axis的java调用web services的例子吧:
      

  2.   

    package test.com.dayang.archive.api;import java.net.URL;
    import java.util.Random;import javax.xml.namespace.QName;
    import javax.xml.rpc.ParameterMode;import org.apache.axis.client.Call;
    import org.apache.axis.client.Service;
    import org.apache.axis.encoding.XMLType;
    import org.apache.axis.encoding.ser.BeanDeserializerFactory;
    import org.apache.axis.encoding.ser.BeanSerializerFactory;import com.dayang.archive.api.param.ArchiveFileInfo;
    import com.dayang.archive.api.param.ArchiveParam;
    import com.dayang.archive.api.param.CopyFileInfo;
    import com.dayang.archive.api.param.DownloadFileInfo;
    import com.dayang.archive.api.param.DownloadParam;
    import com.dayang.archive.api.param.FileCopyParam;
    import com.dayang.archive.structure.TaskInfo;
    import com.dayang.archive.structure.TaskProgress;import junit.framework.TestCase;public class TestArchiveAPIWebServices extends TestCase {
    Service service = null;
    Call call = null;
    protected void tearDown() throws Exception {
    // TODO Auto-generated method stub
    super.tearDown();
    }

    protected void setUp() throws Exception {
    super.setUp();
            //建立请求服务框架实例。
            service = new Service();
            //从框架中生成一个维护调用的实例。
            call = (Call) service.createCall();
              //注册输出参数类型
            QName qn = new QName("urn:archive_api","TaskProgress");
            call.registerTypeMapping(TaskProgress.class,qn,
                          new BeanSerializerFactory(TaskProgress.class, qn),
                                new BeanDeserializerFactory(TaskProgress.class, qn) );        QName qn1 = new QName("urn:archive_api","TaskInfo");
            call.registerTypeMapping(TaskInfo.class,qn1,
                          new BeanSerializerFactory(TaskInfo.class, qn1),
                                new BeanDeserializerFactory(TaskInfo.class, qn1) );        QName qn2 = new QName("urn:archive_api","FileCopyParam");
            call.registerTypeMapping(FileCopyParam.class,qn2,
                          new BeanSerializerFactory(FileCopyParam.class, qn2),
                                new BeanDeserializerFactory(FileCopyParam.class, qn2) );
            
            QName qn3 = new QName("urn:archive_api","CopyFileInfo");
            call.registerTypeMapping(CopyFileInfo.class,qn3,
                          new BeanSerializerFactory(CopyFileInfo.class, qn3),
                                new BeanDeserializerFactory(CopyFileInfo.class, qn3) );
            
            QName qn4 = new QName("urn:archive_api","DownloadParam");
            call.registerTypeMapping(DownloadParam.class,qn4,
                          new BeanSerializerFactory(DownloadParam.class, qn4),
                                new BeanDeserializerFactory(DownloadParam.class, qn4) );
            
            QName qn5 = new QName("urn:archive_api","DownloadFileInfo");
            call.registerTypeMapping(DownloadFileInfo.class,qn5,
                          new BeanSerializerFactory(DownloadFileInfo.class, qn5),
                                new BeanDeserializerFactory(DownloadFileInfo.class, qn5) );
            
            QName qn6 = new QName("urn:archive_api","ArchiveFileInfo");
            call.registerTypeMapping(ArchiveFileInfo.class,qn6,
                          new BeanSerializerFactory(ArchiveFileInfo.class, qn6),
                                new BeanDeserializerFactory(ArchiveFileInfo.class, qn6) );
            
            QName qn7 = new QName("urn:archive_api","ArchiveParam");
            call.registerTypeMapping(ArchiveParam.class,qn7,
                          new BeanSerializerFactory(ArchiveParam.class, qn7),
                                new BeanDeserializerFactory(ArchiveParam.class, qn7) );
            
            // 调用的web服务的url地址
    //        call.setTargetEndpointAddress(new URL("http://localhost:8080/archive_api_ws/services/archive_api"));
            call.setTargetEndpointAddress(new URL("http://localhost:8080/archive_api_ws/TestServlet"));
    }
      

  3.   

    我再说一次,是flash调用webservice不是java调用webservice,但我用java写出的webservice我需要考虑flash那边是否可以调用。如果我提供的方法返回的是一个对象的话,flash那边有对象的概念吗?
      

  4.   

    考虑下“h_lj(贝塔) ”的方法,XML文件内容以字符串形式返回,调用端得到该字符串后随便处理。
      

  5.   

    flash可以读xml文件么?如果可以读的话考虑用handler实现,直接返回xml文件
      

  6.   

    flash不太懂哈,java读写XML到是没什么问题