簡體   English   中英

BlazeDs Java對象的序列化

[英]BlazeDs serialization of Java objects

我有一些實現序列化的Java類,以及相應的實現IExternalizable的AS對象(由GAS自行生成)。

從服務器接收對象沒有問題,但是當我嘗試將對象發送到服務器時,它將引發異常:

[BlazeDS]Class 'xxx' must implement java.io.Externalizable to receive client 
 IExternalizable instances. flex.messaging.io.SerializationException: Class 'xxx' must  
implement java.io.Externalizable to receive client IExternalizable instances.

真的必須實現Externalizable才能將對象發送到Java服務器嗎?

實際上,我不必實現Externalizable甚至不是Serializable。 相反,我只需要在flex一側指定它是一個遠程類,其別名指向完整的Java類路徑。 我還應確保屬性名稱(或getter和setter)等於Java對象的屬性名稱。 最后,我應該確保對象/屬性類型匹配或轉換正確(將數字Java對象轉換為Flex中的Number等)。

您必須實現Externalizable。

請參閱http://help.adobe.com/zh_CN/LiveCycleDataServicesES/3.1/Developing/WSc3ff6d0ea77859461172e0811f00f6eab8-7ffdUpdate.html

在ActionScript和Java之間使用自定義序列化

如果用於在客戶端上的ActionScript和服務器上的Java之間進行數據序列化和反序列化的標准機制不滿足您的需求,則可以編寫自己的序列化方案。 您可以在客戶端上實現基於ActionScript的flash.utils.IExternalizable接口,並在服務器上實現相應的基於Java的java.io.Externalizable接口。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM