OrientDB の OObjectDatabaseTx 実装を使用して、POJO をデータベースに格納しています。SQL コマンドを使用していくつかの POJO を取得しようとすると、結果セットが取得されますが、POJO の属性が空であるように見えます (ゲッターが null を返します)。
クラスを適切に登録します
db.getEntityManager().registerEntityClass(MyUser.class);
次のコードは私の問題を説明しています:
Map<String, String> params = new HashMap<String, String>();
params.put("name", username);
List<MyUser> users = db.command(
new OSQLSynchQuery<MyUser>(
"select * from MyUser where "
+ "name = :name"))
.execute(params);
for (MyUser founduser : users) {
ODocument doc = db.getRecordByUserObject(founduser, false);
String pass = doc.field("pwd");
assertEquals(pass != null, true); // passes
assertEquals(founduser.getPwd() != null, true); // fails
}
メソッド getPwd が適切な値を返すようにするにはどうすればよいですか?
私は現在、バージョン 1.3.0 を使用していますが、これは以前は機能していました (1.1.0 の場合)。