2012-04-09 9 views
2

オブジェクトの永続化のためにObjectifyを使用するGWT-Appエンジンプロジェクトでオブジェクトを永続させています。しかし、私はこのエラーを取得しています。スタックに基づいてオブジェクトをアプリケーションエンジンに永続化するときに「このスレッドにAPI環境が登録されていません」というエラーが発生しました

Caused by: java.lang.NullPointerException: No API environment is registered for this thread.

は、エラーが客観のput方法に由来トレース。私はオブジェクトが永続化されるアプリケーションがNULLでないことを確認しました。

このエラーの原因は何ですか?

+0

pojoフィールド、特にidに関連付けることはできますか? @IdをLongに設定したので、getterとsetterはStringのように設定されています。\t public String getId(){ \t \t return id.toString(); \t} \t公共ボイドSETID(文字列ID){ \t \t this.id = Long.valueOf(ID)。 \t} – xybrek

+0

また、新しいデモGWT-Appエンジンプロジェクトを作成し、VM引数をコピーしました。問題が "実行コンフィギュレーション"であるかどうかを確認するだけです – xybrek

+0

Objectifyインスタンス(静的メンバーなど)を共有していますか?スレッド?スレッドごとに常にObjectifyService.begin()を使用する必要があります。 –

答えて

3

あなたが保持しているエンティティクラスごとにObjectifyFactory.register(Class clazz)に電話する必要があります。これは1回(JVMインスタンスごとに)行う必要があります。

+0

私はこれをアプリケーションごとに保持しています。\ – xybrek

+0

Hmm ..どのIDEを使用していますか?そして、あなたはそのアプリケーションをどのように起動しますか? – expert

+2

クラスを登録しましたが、まだエラーがあります。 –

関連する問題