1

通常は 500 文字を超えるフィールドを保存する必要があります。String データ型を使用すると、App Engine は失敗し、この場合は com.google.appengine.api.datastore.Text データ型の使用を提案します。

これを行うと、Android クライアントは次のエラーで失敗します。

AndroidRuntime タグ: 原因: java.lang.IllegalArgumentException: プリミティブ クラスが必要ですが、得た: class com.sample.sampleproj.sampleendpoint.model.Text at com.google.api.client.util.Data.parsePrimitiveValue(Data.java: 4 53)

500 文字を超える文字列値を App Engine に保存し、クラウド エンドポイントでサポートするにはどうすればよいですか?

4

1 に答える 1

0

データストアには文書化された制限があります - 文字列の場合は 500 文字です。Text (または Text は推奨されていないため、インデックスのない文字列) を使用してバイパスできます。ただし、これはデータストアからのデータの保存/読み取りをカバーするだけです。

エンドポイント メソッドの単一パラメーターには、文書化されていない 500 文字の制限があります。これは、オブジェクトをメソッドに送信すると、シリアル化後に 500 文字よりも多くのスペースが必要になり、メソッドが失敗することを意味します。

サーブレットを使用してバイパスしました。ここで私の質問を参照してください

于 2014-05-30T07:23:18.770 に答える