Search code examples
neo4jneo4j-ogm

Neo4j session.query throwing NoSuchMethodError


I am using neo4j OGM to fire plain CQL queries using the session.query method provided.

The code is as follows:

String findPersonCql ="MATCH (p:PersonNode) return p";
session = Neo4jOGMSessionFactory.getInstance().getNeo4jSession();
transaction = session.beginTransaction();

session.query(findPersonCql,Collections.EMPTY_MAP);
transaction.commit();

An exception is being thrown as follows:

Exception in thread "grpc-default-executor-0" java.lang.NoSuchMethodError: org.neo4j.ogm.model.RestModel.getValues()[Ljava/lang/Object;
at org.neo4j.ogm.context.RestModelMapper.map(RestModelMapper.java:55)
at org.neo4j.ogm.session.delegates.ExecuteQueriesDelegate.query(ExecuteQueriesDelegate.java:97)
at org.neo4j.ogm.session.delegates.ExecuteQueriesDelegate.query(ExecuteQueriesDelegate.java:76)
at org.neo4j.ogm.session.Neo4jSession.query(Neo4jSession.java:313)

We are using gradle dependencies as follows:

compile 'org.neo4j:neo4j-ogm:2.0.0'
compile "org.neo4j:neo4j-ogm-core:2.0.0-M01"
compile "org.neo4j:neo4j-ogm-http-driver:2.0.1"

Please let me know if I am missing something. Thanks

Updated.


Solution

  • You appear to have various versions included- 2.0.0, 2.0.0-M01 and 2.0.1!

    There's no more a dependency called neo4j-ogm. Instead, use

    compile 'org.neo4j:neo4j-ogm-core:2.0.1'

    and

    compile 'org.neo4j:neo4j-ogm-http-driver:2.0.1'

    See http://neo4j.com/docs/ogm/java/stable/#_dependencies_for_the_neo4j_ogm