Como configuro corretamente a persistência entre lojas usando o Spring Data JPA + Neo4j?
Estou tentando obter um projeto entre repositórios JPA + SDN (Spring Data Neo4j) muito mínimo em execução e estou tentando demonstrar que salvar uma entidade parcial usando uma chamada de repositório JPA criará um nó correspondente no Neo4j.
Segui as instruções / conselhos que consegui encontrar no site da SO, Google e Spring, mas ainda estou tendo problemas para resolver o problema. Atualmente, tenho um projeto de teste mínimo criado em:
https://github.com/simon-lam/sdn-cross-store-poc
O projeto usa o Spring Boot e possui um domínio simples que contém uma entidade gráfica,GraphNodeEntity.java
e uma entidade parcial,PartialEntity.java
. Eu escrevi um teste muito básico,PartialEntityRepositoryTest.java
, para salvar a entidade parcial e estou vendo:
CrossStoreNeo4jConfiguration
classe não faz o autowire corretamenteentityManagerFactory
, é nuloComo resultado do ^ acima, nenhum ID é atribuído à minha entidadeNão vejo nenhuma atividade SDN nos logsEstou fazendo algo flagrantemente errado?De maneira mais geral, esperava confirmar algumas suposições e entender melhor o suporte à persistência entre lojas em geral:
Para habilitá-lo, preciso habilitar o mapeamento avançado?Como parte da ativação do mapeamento avançado, preciso configurar o AspectJ; isso inclui ativar a tecelagem do tempo de carregamento? Nesse caso, isso é realizado usando o@EnableLoadTimeWeaving
config?Supondo que toda a minha configuração seja finalmente corrigida, devo esperar que os nós parciais persistam no Neo4j quando eu persistir usando um repositório JPA? Isso deve ser tratado pelo suporte entre lojas, que é direcionado por aspectos, certo?Obrigado por qualquer ajuda que possa ser oferecida!