當我使用BlazeDS傳遞包含Date變量的Actionscript值對象時,它無法正確地作爲java.util.Date對象進行傳輸。當在Java端調用setBaseDate函數時,baseDate值爲NULL。奇怪的是,如果我將Java端的變量重命名爲private Date date;
並創建public void setDate(Date date)
函數。問題是我需要通過2個不同的日期,所以我不能使用這項工作。AS3使用BlazeDS無法序列化到Java的日期
有誰知道我在做什麼錯?
這裏是我的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();
}
}
}
的Java:
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;
}
}
不是問題不是沒有設置正確的值....問題是價值來自柔性爲NULL – Shua 2009-09-30 15:35:04
精心製作.....讓我說我把一個斷點在Java類在setEndDate函數...當它被執行時,endDate參數是NULL ...即使它在發送之前在flex中設置 – Shua 2009-09-30 15:39:11
您是否已經使用http調試器(例如Charles)檢查日期是否爲空當你發送出去?這是在服務器上收到並在BlazeDS中解析之前。 – 2009-09-30 15:57:32