Hi folks,

I am successfully using Neo4j repositories (Spring Data and IoC) running in 
JUnit.  However, the same JAR wrapped in a plugin ("New Plug-in from 
Exisiting JAR archives") and hosted in Eclipse has issues when creating a 
repository bean.  

To clarify that, I have two plugins, one that encapsulates both my data 
access code and references to Neo and other dependency JARs.  There is a 
second plugin that consumes the first by creating the IoC container and 
calling getBean, at which point (if it is a repository) I get 
org.springframework.beans.factory.NoSuchBeanDefinitionException: No 
qualifying bean of type [x.y.z.StupidRepository] is defined.  I can however 
create a bean that is explicitly defined e.g. I can get an instance of 
GraphDatabase by calling getBean.

Having spent some time investigating this, it appears that it could be a 
conflict with OSGi and classloaders.  This rings true because the repos are 
seemingly run-time constructs driven by scanning i.e. 
@EnableNeo4jRepositories(basePackages = "x.y.z.repositories").  One thing I 
did is make sure that the consuming plugin imported all of my repo packages 
in the manifest.  Perhaps, there are other neo related imports required in 
the manifest? Or more likely I am barking up the wrong tree entirely?

There is a post that may be related to this from some time ago 
https://groups.google.com/forum/#!searchin/neo4j/osgi/neo4j/GOVQSyJlXAM/W7_zJgSiBr4J
 
that references an article that is no longer available :-( 
http://docs.neo4j.org/chunked/snapshot/tutorials-java-embedded-osgi.html. 
 This also looks promising but contains a dead link 
http://docs.neo4j.org/chunked/snapshot/tutorials-java-embedded-osgi.html#_simple_osgi_activator_scenario

versions;
*neo4j-2.0.1*
*spring-data-neo4j-3.0.0.RELEASE*
*spring-beans-4.0.3.RELEASE*

Any pointers would be greatly appreciated

Thanks,

Dan.

-- 
You received this message because you are subscribed to the Google Groups 
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to