【问题标题】:Generating ActionScript value objects from an xsd schema从 xsd 架构生成 ActionScript 值对象
【发布时间】:2009-03-11 17:40:44
【问题描述】:

是否有任何工具可用于将 xsd 架构中定义的类型(可能包括也可能不包括其他 xsd 文件)转换为 ActionScript 值对象?我已经在谷歌上搜索了一段时间,但似乎找不到任何工具,我正在考虑编写这样的工具是否会比手动编写我们的值对象节省更多时间。

我一直在考虑的另一种可能性是使用 XMLBeans 等工具将模式定义的类型转换为 Java 类,然后在 ActionScript 中转换这些类。但是,我开始意识到那里有大量的 java -> as3 转换器,一般的共识似乎是它们可以工作,也就是说,我不知道哪种工具适合。

有什么想法吗?

【问题讨论】:

    标签: java apache-flex actionscript xsd value-objects


    【解决方案1】:

    对于 Java -> AS 生成,请查看 Granite Data Services 项目中的 GAS3:

    http://www.graniteds.org/confluence/display/DOC/2.+Gas3+Code+Generator

    这也是你可以自己编写的东西,特别是如果你利用像 Ant 这样的工具并编写一个自定义任务来处理它。事实上,我去年就做了这个并且开源了它:

    https://github.com/cliffmeyers/Java2As

    【讨论】:

    • 是的,前几天我注意到了 GAS3,但还没有尝试过。谢谢,我会接受这个作为答案!
    【解决方案2】:

    我也没有任何类型的翻译。我所做的是有一个由 ActionScript 对象包装的 XML 对象。然后,对于转换 xml->whatever 和whatever->XML 的每个值,您都有一个 getter/setter。不过,您仍然需要编写 getter/setter,但您可以拥有一个适合您的宏/代码片段句柄。

    所以对于像这样的 XML:

    <person>
        <name>Bob</name>
        ...
    </person>
    

    然后我们有一个 XML Object Wrapper 类并对其进行扩展。正常

    class XMLObjectWrapper
    {
        var _XMLObject:XML;
    
        function set XMLObject(xml:XML):void
        {
            _XMLObject = xml;
        }
    
        function get XMLObject():XML
        {
            return _XMLObject;
        }
    }
    
    class person extends XMLObjectWrapper
    {
        function set name(value:String):void
        {
            _XMLObject.name = value;
        }
    
        function get name():String
        {
            return _XMLObject.name;
        }
    
    }
    

    【讨论】:

    • 并不是我真正想要的,但仍然是一个非常有趣的方法!感谢分享!
    猜你喜欢
    • 2013-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多