2

この文書には次のように書かれています。

HTML5 ローカル ストレージは、データをキーと値のペアとして文字列形式で保存します。保存したいデータが文字列データでない場合は、LocalStorage を使用するときに文字列との間の変換を行う必要があります。GWT の RequestFactory で使用されるプロキシ クラスの場合、RequestFactory#getSerializer() を使用して文字列のシリアル化を行うことができます。非プロキシ オブジェクトの場合、JSON stringify および parseを使用できます。

オブジェクトを「文字列化」してクライアントに保存するのを手伝ってくれる人はいますか? GWT にはこれを行う方法がありますか?

4

3 に答える 3

3

gwt-storage https://github.com/seanchenxi/gwt-storageを試すことができます。その主な機能は、java オブジェクトを html5 ストレージ (localstorage/sessionstorage) に格納することです。

于 2015-02-19T23:31:13.133 に答える
0

オブジェクトをシリアル化する必要があります。TransportReceiver に文字列として転送されるペイロードを格納できます (RequestFacotries を使用している場合)。

public class CustomTransportReceiver implements TransportReceiver {

    @Override
    public void onTransportSuccess(String payload) {

        //Save payload to LocalStorage

    }

    @Override
    public void onTransportFailure(ServerFailure failure) {
        //Handle Failure

    }

}

独自の RequestTransport を作成します。

public class AppRequestTransportLocalStorage extends DefaultRequestTransport {
        @Override
    public void send(String payload, TransportReceiver receiver) {
           super.send(payload, new CustomTransportReceiver());
    }
}

そして、RequestFactory を開始する場所に次のように記述します。

requestfactory.initialize(new SimpleEventBus(), new AppRequestTransportLocalStorage());
于 2013-02-26T15:26:57.360 に答える
0

これは、 JSON データを取得するための公式の GWT リンクです。

そのチュートリアルの例

使用する

JsonUtils.safeEval(json);

その結果を に渡すことができますHTML5

于 2013-02-26T15:43:28.023 に答える