java - 如何让 BlazeDS 忽略属性?

标签 java apache-flex blazeds amf

我有一个 java 类,它有一个带有 getter 和 setter 的字段,以及第二对以另一种方式访问​​该字段的 getter 和 setter:

public class NullAbleId {
   private static final int NULL_ID = -1;
   private int internalId;

   getter & setter for internalId

   public  Integer getId() {
     if(this.internalId == NULL_ID) {
       return null;      
     } else {
       return Integer.valueOf(internalId);
     }
    }

    public void setId(Integer id) {
      if (id == null) {
        this.internalId = NULL_ID;
      } else {
        this.internalId = id.intValue();
      }
    }

}

(这样构造的原因是我要构造一个way to hande Nullable Intergers)

在 Flash/Flex 客户端,我有一个类有两个属性:id 和 internalId(id 属性仅用于测试,最后它们应该返回 internalId 值)

BlazeDS 接缝传输两个值:id 和 internalId,因为它们都有完整的 getter setter 对。 我希望 Blaze 不传输 id,只传输 internalId。但我不知道我必须如何配置它。

最佳答案

BlazeDS 序列化的所有规则都在这里:

http://livedocs.adobe.com/blazeds/1/blazeds_devguide/help.html?content=serialize_data_3.html

引用一句:“静态的、 transient 的或非公共(public)的字段,以及非公共(public)的或静态的 bean 属性都被排除在外。”

因此,如果您可以使您的 id 属性符合该标准,它将被排除在外。另一种选择是创建一个公开不包含您的 id 属性的自定义序列化程序。

祝一切顺利

~哈里斯

关于java - 如何让 BlazeDS 忽略属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4957184/

相关文章:

Java NIO 通过 ByteBuffer 扫描某些字节和带有节的字

java - 已安装 JDBC 驱动程序但出现异常

apache-flex - Flex 中的最大整数值是多少?

mysql - 将预先存在的 Flex/Java/Hibernate/MySQL 应用程序迁移到可移植发行版的 CD 上的最佳途径?

java - 如何在用户登录 BlazeDS 时为 FlexSession 设置一个属性?

java - 每次我在 flex 中刷新浏览器时如何获得警告消息

java - 从servlet获取对象到flex

java IO不可序列化异常

apache-flex - 逐个比较 AS3 像素中的位图数据

java - 是否需要编写 web.xml 文件才能运行 Servlet 程序?