Jeg har muligvis været i en lignende situation, hvor jeg ønskede Spring Data JPA @CreatedDate annotering til at virke, men havde ikke behov for den revision på brugerniveau, som ellers er beskrevet i deres dokumentation.
For at få den annotationsbaserede revision til at fungere, var jeg ikke desto mindre nødt til at tilføje en klasse til mit projekt, der implementerede org.springframework.data.domain.AuditorAware . Dette er mærkeligt, fordi du faktisk ikke ser ud til at bruge den værdi, der returneres fra getCurrentAuditor() metode, som du vil implementere; min returnerer bare null .
public class NullAuditorBean implements AuditorAware {
@Override
public Object getCurrentAuditor() {
return null;
}
}
Jeg var så nødt til at henvise til mit "nul-objekt" AuditorAware implementering i en post i min applicationContext for at aktivere JPA-revisionen. Jeg var nødt til at sikre mig, at jeg gjorde dette før linjen, der specificerer jpa:repositories . Dette ser sådan ud:
<bean id="auditorBean" class="your.package.subbed.here.NullAuditorBean"/>
<jpa:auditing auditor-aware-ref="auditorBean"/>
Jeg var også nødt til at tilføje en orm.xml fil, og skulle formelt henvise til den som en ejendom tilhørende min entityManagerFactory bønne, sådan:
<property name="mappingResources">
<value>META-INF/orm.xml</value>
</property>
Sørg for at denne META-INF/orm.xml posten er gemt med dit kompileringsoutput (min er i min WAR under WEB-INF/classes .
Den orm.xml fil, for en god ordens skyld, indeholdt en kedelplade, som kan findes i svaret på dette relaterede spørgsmål.
Det var en del arbejde, da jeg fik dette til at virke. Du foretrækker måske din tidligere arbejdsløsning!