当我使用BlazeDS传递包含Date变量的Actionscript值对象时,它不会正确地作为java.util.Date对象进行传输。当在Java端调用setBaseDatefunction时,baseDate值为NULL。奇怪的是,如果我将Java端的变量重命名为private Date date;
并创建一个public void setDate( Date date)
函数,它就可以工作。问题是我需要传递2个不同的日期,所以我不能使用这个工作。
有谁知道我做错了什么?
这是我的两个班级:
AS3
package com.shua.flex.valueobjects
{
[Bindable]
[RemoteClass(alias='com.shua.valueObjects.myVO')]
public class myVO
{
public var label:String;
public var endDate:Date;
public var baseDate:Date;
public function myVO()
{
super();
}
}
}
爪哇:
package com.shua.valueObjects;
import java.util.Date;
public class myVO{
public static String NAME = "myVO";
private String label;
private Date endDate;
private Date baseDate;
public void setLabel(String label) {
this.label = label;
}
public String getLabel() {
return label;
}
public void setEndDate(Date endDate) {
this.endDate= endDate;
}
public Date getEndDate() {
return this.endDate;
}
public void setBaseDate( Date baseDate ){
this.baseDate = baseDate;
}
public Date getBaseDate(){
return this.baseDate;
}
}
答案 0 :(得分:0)
在同一个类中发送多个Date对象应该不是问题。
你确定在getter或setter中某处没有小错误吗?你有房产的吸气剂和安装者吗?
答案 1 :(得分:0)
你可以尝试:
答案 2 :(得分:0)
问题是java对象中的静态字符串。我想这些类需要完全匹配序列化才能自动工作。因此,只需删除静态名称即可解决问题。