我正在开始一个新项目,并决定使用springboot数据neo4j和OGM尝试neo4j。一切都工作得很好,但在我的开发环境中,spring-boot-devtools并没有多大帮助。
每次我更改java类时,自动重启触发,然后我运行的任何查询抛出ClassCastException,如
java.lang.ClassCastException: br.com.ncisaude.gr.dominio.usuario.Usuario cannot be cast to br.com.ncisaude.gr.dominio.usuario.Usuario
at com.sun.proxy.$Proxy133.findByEmail(Unknown Source)...
显然这是一个类加载器问题,因为类是一样的。
我相信neo4j OGM或spring-data-neo4j使用序列化进行缓存或类似的东西,这导致了这个异常,但我不确定。
有人知道这方面的工作吗?如果它与缓存相关,有什么方法可以禁用那些缓存?
我不知道是否应该向neo4j ogm或spring-boot-neo4j发送问题,对此有任何见解吗?
我使用螺栓驱动程序2.1.2运行弹簧启动版本1.5.3。我的配置没有什么特别的,它只是neo4j的默认springboot设置。
@Configuration
@EnableSpringConfigured
@EnableTransactionManagement(mode = AdviceMode.ASPECTJ)
@EnableScheduling
@EntityScan("br.com.ncisaude.gr.dominio")
public class SpringConfig {
@Bean
@Profile("dev")
public org.neo4j.ogm.config.Configuration getConfiguration() {
org.neo4j.ogm.config.Configuration config = new org.neo4j.ogm.config.Configuration();
AutoIndexConfiguration autoIndexConfiguration = config.autoIndexConfiguration();
// Modo assert remove e cria todas as constraints
autoIndexConfiguration.setAutoIndex("assert");
DriverConfiguration driverConfiguration = config.driverConfiguration();
driverConfiguration.setURI("bolt://localhost");
driverConfiguration.setCredentials("neo4j", "******");
return config;
}
}
先谢谢
[]中