Apache flex 如何在运行时从xsd模式转到Actionscript对象(Flex)?

Apache flex 如何在运行时从xsd模式转到Actionscript对象(Flex)?,apache-flex,actionscript-3,Apache Flex,Actionscript 3,我在这里看到询问xsd->actionscript对象,但这些对象似乎需要xsd->java->actionscript,并且都在源代码中。我们的要求有点不同: 在运行时接收我们以前从未见过的xsd 基于xsd创建实例对象 填写实例的值(来自xml文档或用户输入-无论什么) 有谁知道一个actionscript库或工具可以帮助我们在运行时实现这一点?如果这样的东西已经存在,那就太好了——但我们肯定会满足于一个库,它为我们提供了一个编程接口来从xsd模式中提取信息。此外,我们还将听取关于实现相同目

我在这里看到询问xsd->actionscript对象,但这些对象似乎需要xsd->java->actionscript,并且都在源代码中。我们的要求有点不同:

  • 在运行时接收我们以前从未见过的xsd
  • 基于xsd创建实例对象
  • 填写实例的值(来自xml文档或用户输入-无论什么)

  • 有谁知道一个actionscript库或工具可以帮助我们在运行时实现这一点?如果这样的东西已经存在,那就太好了——但我们肯定会满足于一个库,它为我们提供了一个编程接口来从xsd模式中提取信息。此外,我们还将听取关于实现相同目的的替代方法的建议。

    您看过Schemaloder。。。?不完全是你想要的。。。但这是一个很好的开始

    首先,您应该查看blog entry和blog entry,这些blog entry引导您体验如何使用Flex SDK中的功能,该SDK提供了自定义ActionScript类到XML模式(XSD)中元素定义的自动映射

    在这里开始行动的步骤包括(来自多米尼克的博客):

    0)创建SchemaLoader实例并从给定URL异步加载XML架构
    1) 加载模式后,将其添加到SchemaManager,并将任何ActionScript类注册到相应的模式类型中

    ----在此阶段,您可以基于模式执行多个操作

    2) 基于该架构加载XML文件
    3) 加载XML后,使用XMLDecoder对内容进行解码。解码xml时,将使用在schemaTypeRegistry中注册的任何类
    4) 使用XMLEncoder将自定义ActionScript类编码回XML。XMLEncoder.encode()支持各种方式来定义模式中的对应元素(顶级元素、特定类型甚至自定义XSD定义),这些元素将用于编码Actionscript对象。

    博客条目有代码示例等的链接


    希望这能有所帮助。

    Ahhh-谢谢您提供的信息。授予你金星!