0

以下のコードを実行すると、期待されるプロパティを持つ新しいユーザーが作成されます。(テストを実行した後、Neoclipseで確認します)。ただし、findByPropertyValueユーザーの取得に失敗します。nullを返すだけです。デバッグusrFromDb1すると、null値しか含まれていないように見えますが、後で確認した値でさえ、実際にデータベースに保存されていました。誰かが解決策のアイデアを持っていますか?

  @Test(enabled = true, groups = {"functest"})
    public void shouldGetUserDetails() throws Exception {
      User user = new User("admin", "secretpw").persist();

      User usrFromDb1 = userRepository.findOne(user.getId());
      assertNotNull(usr1); //succeeds

      User usrFromDb2 = userRepository.findByPropertyValue("username", "admin");
      assertNotNull(usr2); //fails
}

ここに画像の説明を入力してください

4

1 に答える 1

2

@Indexedユーザー名属性にプロパティがありますか。

Userクラスを見せていただけませんか?

このマッピングモードのデバッグb/cでは、ユーザーのフィールドはnullであり、AspectJによって透過的に処理されuser.getUserName()ます。デバッガーで呼び出すと、値が生成されます。

usrFromDb2また、アサーションの変数名がクエリ結果の変数名と一致しません。usr2

于 2011-11-04T18:55:44.460 に答える