3


0

App Engine-Objectify-バイトを保存する[]

App EngineデータストアとのインターフェイスにObjectifyライブラリを使用しています。

私のUserクラスでは、ハッシュされたパスワードを `byte []`として保存します。 データストアに配置すると、「blob」として正しく保存されます。

「User」オブジェクトをロードして戻そうとすると、次のエラーが表示されます。

`java.lang.IllegalStateException:非コレクション値 ''をプライベートバイト[]にロードできません

どうすればこれを修正できますか?

ハッシュされたパスワードのタイプを「ShortBlob」にするには、Userクラスを変更する必要がありますか?

3 Answer


3


なぜ Blob(または` ShortBlob`)として取得し、 `getBytes()`で `byte []`を取り出さないのですか?


0


私は試してみます:

  1. Pojo UserクラスでShortBlogを使用する

  2. ByteではなくStringを使用してByte []をStringに変換して、 パスワード

  3. へのリクエストの投稿 googleグループを対象化


0


md5 'd文字列を使用することをお勧めしますか? 別の可能性は、バイトをロードしようとしたときに、ユーザーがObjectifyによって適切に登録されていないことです。 「objectify」のベストプラクティスにリンクがあります

これは、PoJoクラスの静的登録を示唆しています。