2013-02-12 49 views
0

我正在使用resty-gwt庫並想知道是否可以動態使用JsonEncoderDecoder接口?Resty-GWT動態代碼生成

例如。我有一個POJO如下:

@JsonTypeInfo(use=Id.CLASS, include=As.PROPERTY, property="class") 
public class MyObject {....} 

隨着響應返回的類名:是否有可能使用發電機來產生接口

public interface MyObjectCodec extends JsonEncoderDecoder<MyObject > {} 

並以某種方式作出GWT.create通話(MyObjectCodec .class) 這樣我可以解碼對象?

回答

0

我相信你即使我從來沒有嘗試過。從restyGWT.gwt.xml

<generate-with class="org.fusesource.restygwt.rebind.RestServiceGenerator"> 
    <when-type-assignable class="org.fusesource.restygwt.client.RestService" /> 
    </generate-with> 
    <generate-with class="org.fusesource.restygwt.rebind.JsonEncoderDecoderGenerator"> 
    <when-type-assignable class="org.fusesource.restygwt.client.JsonEncoderDecoder" /> 
    </generate-with> 
    <generate-with class="org.fusesource.restygwt.rebind.DirectRestServiceGenerator"> 
    <when-type-assignable class="org.fusesource.restygwt.client.DirectRestService" /> 
    </generate-with> 

所以,如果你正在寫一個JsonEncoderDecoder發電機應生成的代碼爲你

提取物。

您應該能夠使用的方法JSONValue encode(T value)編碼的對象JSONValue

我不知道你的動力是什麼意思,但IMO它是所有「靜態」這意味着它不會真的取決於運行變量或任何東西。