我想知道是否有可能使用GWT的序列化程序。當使用GWT的rpc-機制時,GWT將客戶端上的對象序列化並對服務器上的對象進行反序列化。對於這種機制,你必須使用GWT的特殊servlet(RemoteServiceServlet
)。但我想使用正常的HttpServlets,因此我必須自己序列化和反序列化對象。GWT:如何序列化對象
0
A
回答
2
您需要查看的所有代碼位於RemoteServiceServlet.java。重點關注processCall方法。
RPC.decodeRequest(payload, ...)將爲您提供一個RPCRequest對象,其中包含要調用的方法和反序列化的參數。
編碼響應重點在RPC.invokeAndEncodeResponse()和RPC.encodeResponseForSuccess()方法。
將帖子
在客戶端這是值得看一看由RPC生成器生成的代理類,具體的YourService_Proxy.java
文件。編譯項目後,生成的文件留在項目文件夾結構中的某個位置(但可以使用-gen
表示該文件夾)。
有趣的代碼是在RemoteServiceProxy,看着createStreamWritter方法,你可以看到如何序列化你的對象。在createStreamReader中,您可以看到如何從服務器反序列化消息。
0
SerializerInt ser = new Serializer();
ser.writeValue("test");
ser.writeValue(new int[]{5,1,6});
String buffer = ser.getBuffer();
SerializerInt des = new Serializer(buffer);
des.readString()
des.readIntegerArr()
相關問題
- 1. GWT對象序列化
- 2. GWT可序列化的對象
- 3. 對象序列化如何
- 4. 如何在java中序列化/反序列化對象列表?
- 5. 對象序列化爲JSON,如何序列化屬性(如XML)
- 6. 序列化對象
- 7. 序列化對象
- 8. 對象序列化
- 9. 對象序列化
- 10. 對象序列化
- 11. 如何完全序列化/反序列化RSAParameters對象
- 12. C++如何序列化/反序列化一個對象?
- 13. 如何反序列化所有SOAP序列化對象
- 14. 如何序列化/反序列化對象
- 15. 我如何序列化/反序列化GTLDriveFile對象到pList
- 16. 如何序列化和反序列化CipherInputStream對象
- 17. 如何序列化和反序列化hibernate對象?
- 18. 如何使用cbor2序列化和反序列化對象?
- 19. 如何序列化和反序列化靜態引用對象?
- 20. 如何序列化/反序列化的ArrayList(對象)
- 21. 序列化 - 如何保護序列化的JAVA對象?
- 22. 如何序列化包含對象列表的對象?
- 23. XML序列化:對象未序列化
- 24. 反序列化序列化對象
- 25. 如何任何可序列化對象發送到客戶端的GWT
- 26. 如何反序列化對象?
- 27. 如何序列化這個JSON對象?
- 28. 如何更改序列化對象?
- 29. 如何序列化pyspark GroupedData對象?
- 30. 如何將對象序列化爲XDocument?
謝謝馬諾洛。是否正確,我必須使用SerializationStreamFactory在客戶端解碼?我如何創建SerializationStreamFactory的實例? – Maxii
編輯我的迴應,包括客戶端。 –