Spring Data JPA @CreatedDate
が必要だったのと同じような状況にあった可能性があります。 アノテーションは機能しますが、ドキュメントに記載されているユーザーレベルの監査は必要ありませんでした。
アノテーションベースの監査を機能させるには、それでも、org.springframework.data.domain.AuditorAware
を実装したクラスをプロジェクトに追加する必要がありました。 。 getCurrentAuditor()
から返された値を実際には使用していないように見えるため、これは奇妙なことです。 実装するメソッド。私はnull
を返すだけです 。
public class NullAuditorBean implements AuditorAware {
@Override
public Object getCurrentAuditor() {
return null;
}
}
次に、「nullオブジェクト」AuditorAware
を参照する必要がありました。 applicationContext
のエントリでの実装 JPA監査をアクティブにします。 jpa:repositories
を指定する行の前にこれを行ったことを確認する必要がありました 。これは次のようになります:
<bean id="auditorBean" class="your.package.subbed.here.NullAuditorBean"/>
<jpa:auditing auditor-aware-ref="auditorBean"/>
orm.xml
も追加する必要がありました ファイルであり、entityManagerFactory
のプロパティとして正式に参照する必要があります 豆、そのように:
<property name="mappingResources">
<value>META-INF/orm.xml</value>
</property>
このMETA-INF/orm.xml
を確認してください エントリはコンパイル出力とともに保存されます(私のWARのWEB-INF/classes
にあります 。
そのorm.xml
記録のために、ファイルには、この関連する質問への回答にある定型文が含まれていました。
私がこれを動かしたとき、それはかなりの量の仕事でした。以前の実用的なソリューションをお勧めします!