That doesn't fix it, unfortunately. :(  (My entities are in db.domain)

But, I have made some progress. I can get it to work if I explicitly create 
the entity from the persister:

        result.columnAs('b').collect { def n ->
            
neo4jTemplate.infrastructure.getEntityPersister().createEntityFromStoredType(n, 
neo4jTemplate)
        }

That's bizarre.

Joe

On Saturday, February 28, 2015 at 12:40:35 AM UTC, Michael Hunger wrote:
>
> this should point to your domain package, something like this
>
>             neo4j.'config'( 'graphDatabaseService': 
> "graphDatabaseService", 'base-package': *"db.entities.neo4j"* )
>
> Am 27.02.2015 um 18:12 schrieb Dr Josef Karthauser <
> [email protected] <javascript:>>:
>
> On 27 Feb 2015, at 14:04, Dr Josef Karthauser <[email protected] 
> <javascript:>> wrote:
>
> Hi there,
>
> Could someone please explain why I’m getting null pointer exceptions?
>
> I’m using spring data neo4j and trying to marshal a node using 
> createEntityFromStoredType.  In my tests it works, but in the production 
> code it fails with a null pointer… not at all sure why - very confusing!
>
>        def result = ee.execute(“match (b) return b)
>        result.columnAs('b').collect { def n ->
>            neo4jTemplate.createEntityFromStoredType(n, null)
>        }
>
> In my test code it returns a list of nodes correctly mapped, but in my 
> production code I’m getting:
>
> [Assertion failed] - this argument is required; it must not be null. 
> Stacktrace follows:
> Message: [Assertion failed] - this argument is required; it must not be 
> null
>    Line | Method
> ->>   30 | doCall                  in 
> db.repositories.SearchGraphService$_getLocatedObjectsOfType_closure2
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
> |     23 | getLocatedObjectsOfType in 
> db.repositories.SearchGraphService$$EP5V0ixU
>
>
>
> It definitely looks like a mapping policy issue… not sure why. When I 
> inject a mapping strategy in by hand it works just fine, ie.:
>
>             def policy = neo4jTemplate.getMappingPolicy(MyDomainClass)
>             neo4jTemplate.createEntityFromStoredType(n, policy)
>
> The issue is that I’m obtaining objects of many different classes and the 
> whole point of passing in a ‘null’ in the policy field is for the mapping 
> to be done automatically for me.
>
> As I said, that is working just fine in my test classes, but there’s 
> something weird about the wiring in my app which is preventing it from 
> working properly.
>
> The wiring is:
>
>             graphDatabaseFactory(GraphDatabaseFactory)
>             graphDatabaseService(GraphDatabaseService, "/tmp/test.db") { 
> bean ->
>                 bean.factoryBean = "graphDatabaseFactory"
>                 bean.factoryMethod = "newEmbeddedDatabase"
>                 bean.destroyMethod = "shutdown"
>             }
>             xmlns neo4j:"http://www.springframework.org/schema/data/neo4j";
>             neo4j.'repositories'( 'graphDatabaseService': 
> "graphDatabaseService", 'base-package': "db.repositories.neo4j" )
>             neo4j.'config'( 'graphDatabaseService': 
> "graphDatabaseService", 'base-package': "db" )
>             ee(ExecutionEngine, graphDatabaseService)
>             neo4jTemplate(Neo4jTemplate, graphDatabaseService)
>
> /me still scratching my head.
>
> Thanks,
> Joe
>
> -- 
> 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] <javascript:>.
> For more options, visit https://groups.google.com/d/optout.
>
>
>

-- 
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