【发布时间】:2015-09-04 09:29:33
【问题描述】:
我正在尝试运行一个非常小的 JPA + SDN (Spring Data Neo4j) 跨商店项目,并试图证明使用 JPA 存储库调用保存部分实体将在 Neo4j 中创建相应的节点。
我已按照在 SO、Google 和 Spring 网站上找到的说明/建议进行操作,但目前仍无法正常运行。我目前在以下位置创建了一个最小的测试项目:
https://github.com/simon-lam/sdn-cross-store-poc
该项目使用 Spring Boot,并有一个简单的域,其中包含一个图形实体 GraphNodeEntity.java 和一个部分实体 PartialEntity.java。我编写了一个非常基本的测试PartialEntityRepositoryTest.java,来保存部分实体并看到:
- 似乎使用了错误的事务管理器,因为
CrossStoreNeo4jConfiguration类没有正确自动装配entityManagerFactory,它为空 - 由于上述 ^,没有为我的实体分配 ID
- 我在日志中根本看不到任何 SDN 活动
- 我做错了什么?
更一般地说,我希望确认一些假设并更好地理解跨商店持久性支持:
- 要启用它,我需要启用高级映射吗?
- 作为启用高级映射的一部分,我需要设置 AspectJ;这是否包括启用加载时间编织?如果是这样,这是通过使用
@EnableLoadTimeWeaving配置完成的吗? - 假设我的所有配置最终都已修复,当我使用 JPA 存储库保存部分节点时,我是否应该期望看到部分节点保存在 Neo4j 中?这应该由方面驱动的跨商店支持来处理,对吧?
感谢您提供的任何帮助!
【问题讨论】:
标签: java spring spring-boot spring-data-jpa spring-data-neo4j