SDN을 처음 사용하기 때문에 최대 절전 모드로 크로스 저장소 지속성을 수행하려고합니다. 웹 사이트에 제공된 tutorial에는 동일한 예가 나와 있습니다. github도 확인했습니다. 질문이 두 개 있습니다.스프링 데이터 Neo4j - 크로스 스토어 지속성
문서 또는 예제에서 언급 한 것처럼 xml 구성을 수행 할 수 없습니다.
<neo4j:config/>
은entityManagerFactory
을 지원하지 않습니다. 내 가정은entityManagerFactory
에 대한 설정자가없는 기본값 인 Neo4jConfiguration을 생성한다는 것입니다. 내가 발견 한 해결 방법은 CrossStoreNeo4jConfiguration bean을 정의하는 것입니다.@Bean public CrossStoreNeo4jConfiguration crossStoreNeo4jConfiguration(){ CrossStoreNeo4jConfiguration configuration = new CrossStoreNeo4jConfiguration(); configuration.setEntityManagerFactory(entityManagerFactory); configuration.setGraphDatabaseService(graphDatabaseService); return configuration; }
어떻게 내에서이 작업을 수행하는
<neo4j:config/>
당신이
neo4j:repositories
를 사용하여 저장소를 정의 할 때neo4j-template-ref
를 사용하여 저장소에 Neo4jTemplate를 참조 할 때 어떻게됩니까? 목적은 무엇입니까?
UDPATE
는 <neo4j:config/> was
와 CrossStoreNeo4jConfiguration
를 생성 할 수 없습니다 이유 난 의존성 스프링 데이터 neo4j - 크로스 store` 누락되었다. 하지만 이제 응용 프로그램 시작시 예외가 발생합니다.
Caused by: java.lang.IllegalStateException: Singleton 'nodeEntityStateFactory' isn't currently in creation
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.afterSingletonCreation(DefaultSingletonBeanRegistry.java:312)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:239)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:292)
at org.springframework.data.neo4j.cross_store.config.CrossStoreNeo4jConfiguration$$EnhancerByCGLIB$$779c5955.nodeEntityStateFactory(<generated>)
at org.springframework.data.neo4j.config.Neo4jConfiguration.mappingContext(Neo4jConfiguration.java:199)
at org.springframework.data.neo4j.cross_store.config.CrossStoreNeo4jConfiguration$$EnhancerByCGLIB$$779c5955.CGLIB$mappingContext$11(<generated>)
at org.springframework.data.neo4j.cross_store.config.CrossStoreNeo4jConfiguration$$EnhancerByCGLIB$$779c5955$$FastClassByCGLIB$$3134c8a8.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:280)
at org.springframework.data.neo4j.cross_store.config.CrossStoreNeo4jConfiguration$$EnhancerByCGLIB$$779c5955.mappingContext(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:149)
미리 감사드립니다.
java.lang.IllegalStateException를 사용할 때이 예외가 발생합니다. 'nodeEntityStateFactory'가 현재 작성되지 않았습니다. 전체 스택 추적으로 내 질문을 업데이트했습니다. – shazinltc
봄 버전을 사용하고 계십니까? 3.1.0.RELEASE로 업데이트 할 수 있습니까? –
3.1을 사용하고 있습니다. – shazinltc