zoukankan      html  css  js  c++  java
  • FluorineFx使用自定义VO(实现IExternalizable接口)

    网上有文章“Flex与.NET互操作(十四)”描述了如何用AMF格式来传输数据。但是如下图

    Flex与.NET互操作(十四):FluorineFx的AMF(Action Message Format)协议通信

    客户端接收到的数据,其类型仅仅是Object,而不是原来自定义的Book类。

    在客户端里我们一旦使用as操作符,希望转换成Book类,就会返回null

    如何使得as操作符可用?

    安装FluorineFX后在FluorineFx\Samples\Flex\Remoting\Externalizable文件夹下面可以看到这样的示例。

    这个示例让server端的自定义类实现FluorineFx.AMF3.IExternalizable接口,client端的VO实现flash.utils.IExternalizable接口。

       [FluorineFx.TransferObject]
        
    public class AgreementVO : IExternalizable
        {
            
    private int _id;
    ...
    package example.externalizable
    {
        
    import flash.utils.IDataOutput;
        
    import flash.utils.IDataInput;
        
    import flash.utils.IExternalizable;
        
    import mx.collections.ArrayCollection;

        [RemoteClass(alias
    ="ServiceLibrary.AgreementVO")]
        
    public class AgreementVO implements IExternalizable
        {
            
    private var _id:int;

    注意如果是as项目,必须首先执行

    registerClassAlias("FxDotNet.Services.DTO.Book", BookVo);

    这样就可以了。

  • 相关阅读:
    门面模式 Facade
    适配器模式 Adapter
    建造者模式 Builder Mode
    原型模式 ProtoType
    抽象工厂模式 Abstract Factory
    工厂方法模式 Factory Method
    简单工厂模式 SimpleFactory
    java设计模式之代理设计模式(Proxy)
    java工厂设计模式初步
    java中的接口概念
  • 原文地址:https://www.cnblogs.com/sagacite/p/1783047.html
Copyright © 2011-2022 走看看