1

Spring Roo には、非一時的フィールド用の AspectJ ゲッターおよびセッターを生成する@RooJavaBeanアノテーションがあります。問題は、一時的なフィールドに対しても生成されることです。私は Asset.java にこれを持っています:

@Transient
private Logger log = Logger.getLogger(this.getClass());

また、Asset_Roo_JavaBean.aj には次の内容があります。

public Logger Asset.getLog() {
    return this.log;
}

public void Asset.setLog(Logger log) {
    this.log = log;
}

フィールドは一時的ですが、ゲッターとセッターを使用してアクセスできるはずですが、ドキュメントがgettersByDefault注釈フィールドについてこれを言うのはなぜですか:

このクラスで宣言された非一時的フィールドごとに getter を生成するかどうか (デフォルトは true)

一時フィールドでメソッドを生成しないようにして、それらをプライベート属性として扱う別の方法はありますか?

4

1 に答える 1

0

どのバージョンの Spring Roo を使用していますか? ROO-3426 問題の JIRA エントリによると、バグには version でパッチを適用する必要があります1.2.5.RELEASE

1.) Roo をアップグレードすることをお勧めします。これで問題が解決するはずです。

2.) インポートされているかどうかを確認してくださいjavax.persistence.Transient

于 2014-08-29T07:56:27.730 に答える