以前ぶちあたった
JDOFatalUserException
の謎。
データストアにエンティティ詰めずにリクエストしたらJDOFatalUserException?
の原因がわかった。
原因というか、ただのミスなんだけど、
エンティティのモデルにするクラスに
@PersistenceCapable(identityType = IdentityType.APPLICATION)
をつけ忘れていたのがいけなかったみたい。
JDOを使う時の条件として
Google App Engine for Javaのドキュメント
には
☆以下引用☆
1. クラスに [@PersistenceCapable(identityType = IdentityType.APPLICATION)] アノテーションをつける。
2. メンバー変数に Long 型の id を定義し、[@PrimaryKey] アノテーションと[@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)] アノテーションをつける。
3. 永続化したいメンバー変数に 「@Persistent」 アノテーションをつける。
☆引用終わり☆
と書いてあったんだけど、
この1個目が足りないと、クエリ生成/送信時に
JDOFatalUserException
が投げられるみたいです。
Perhaps you need to run the enhancer on this class?
と言われたら、疑うといいかも。