【发布时间】:2018-01-18 18:40:03
【问题描述】:
我在获取 @CreatedDate 以及其他审计功能时遇到了一些问题。我相信我已经遵循了Reference Document 中提供的指导,但我相信可能缺少一些东西。我目前正在使用使用 SDN 5.0.2 的 Spring Boot 2.0.0.M7。我正在尝试一个非常简单的示例,但无论我使用Long、LocalDate 还是Date,当我在 Neo4j 浏览器中查看数据或尝试将保存的节点加载回POJO。
这是我的对象的 sn-p:
@NodeEntity
public class Person {
@Id @GeneratedValue private Long id;
@CreatedBy
private String user;
@CreatedDate
public Long createdDate;
private String name;
public Person() {
}
public Person(String name) {
this.name = name;
}
我有一个非常简单的存储库,它只有一个findByName 方法,主应用程序也没有做太多事情,但它看起来像这样:
@SpringBootApplication
@EnableNeo4jRepositories
public class Application {
private final static Logger log = LoggerFactory.getLogger(Application.class);
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
@Bean
CommandLineRunner demo(PersonRepository personRepository) {
return args -> {
personRepository.deleteAll();
Person bob = new Person("Bob");
personRepository.save(bob);
Person bob2 = personRepository.findByName(bob.getName());
log.info("Name: " + bob2.getName() + " Created Date: " + bob2.createdDate);
};
}
}
日志的输出显示createdDate仍然是null:
Name: Bob Created Date = : null
我什至创建了一个实现AuditorAware 的类,但应用程序从未触发该代码。我想我遗漏了一些注释并尝试了@EnableNeo4jAuditing,但这会导致The dependencies of some of the beans in the application context form a cycle:
我似乎找不到我缺少的东西。我在 SDN 4 中看到有人设置了应用程序侦听器,但那是在审计支持之前。我觉得我已经完成了我的研究,但我碰壁了。
【问题讨论】:
-
你找到解决办法了吗?
-
我可以重现该错误。致力于解决方案。您也可以在 bugtracker (jira.spring.io/browse/DATAGRAPH) 中提出问题
-
要跟踪的问题可以在这里找到:jira.spring.io/browse/DATAGRAPH-1061 这计划在下一个版本中修复。
标签: spring-data-neo4j neo4j-ogm spring-data-neo4j-5