Question

I am relatively new in Neo4j. A new version of neo4j plugin been released: http://grails.org/plugin/neo4j.

I am running neo4j V2.0.2 on my dev environment.

When I run one of my integration tests or starting the app, I am getting the following error:

Error 2014-05-05 01:04:17,828 [localhost-startStop-1] ERROR context.GrailsContextLoader  - Error initializing the application: cannot handle type rest
Message: cannot handle type rest
    Line | Method
->>   59 | doCall                    in org.grails.datastore.gorm.neo4j.plugin.support.Neo4jSpringConfigurer$_getSpringCustomizer_closure1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|    133 | doCall                    in org.grails.datastore.gorm.plugin.support.SpringConfigurer$_configureSpring_closure1
|    754 | invokeBeanDefiningClosure in grails.spring.BeanBuilder
|    584 | beans                     in     ''
|    527 | invokeMethod . . . . . .  in     ''
|    262 | run                       in java.util.concurrent.FutureTask
|   1145 | runWorker . . . . . . . . in java.util.concurrent.ThreadPoolExecutor
|    615 | run                       in java.util.concurrent.ThreadPoolExecutor$Worker
^    745 | run . . . . . . . . . . . in java.lang.Thread
Error |
Forked Grails VM exited with error

Here is my BuildConfig.groovy:

    grails.servlet.version = "3.0" // Change depending on target container compliance (2.5 or 3.0)
grails.project.class.dir = "target/classes"
grails.project.test.class.dir = "target/test-classes"
grails.project.test.reports.dir = "target/test-reports"
grails.project.work.dir = "target/work"
grails.project.target.level = 1.7
grails.project.source.level = 1.7
//grails.project.war.file = "target/${appName}-${appVersion}.war"

grails.project.fork = [
    // configure settings for compilation JVM, note that if you alter the Groovy version forked compilation is required
    //  compile: [maxMemory: 256, minMemory: 64, debug: false, maxPerm: 256, daemon:true],

    // configure settings for the test-app JVM, uses the daemon by default
    test: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, daemon:true],
    // configure settings for the run-app JVM
    run: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, forkReserve:false],
    // configure settings for the run-war JVM
    war: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256, forkReserve:false],
    // configure settings for the Console UI JVM
    console: [maxMemory: 768, minMemory: 64, debug: false, maxPerm: 256]
]

grails.project.dependency.resolver = "maven" // or ivy
grails.project.dependency.resolution = {
    // inherit Grails' default dependencies
    inherits("global") {
        // specify dependency exclusions here; for example, uncomment this to disable ehcache:
        // excludes 'ehcache'
    }
    log "debug" // log level of Ivy resolver, either 'error', 'warn', 'info', 'debug' or 'verbose'
    checksums true // Whether to verify checksums on resolve
    legacyResolve false // whether to do a secondary resolve on plugin installation, not advised and here for backwards compatibility

    repositories {
        inherits true // Whether to inherit repository definitions from plugins

        grailsPlugins()
        grailsHome()
        mavenLocal()
        grailsCentral()
        mavenCentral()

        mavenRepo 'http://repo.spring.io/release'
        mavenRepo 'http://m2.neo4j.org/content/repositories/releases/'
        // uncomment these (or add new ones) to enable remote dependency resolution from public Maven repositories
        //mavenRepo "http://repository.codehaus.org"
        //mavenRepo "http://download.java.net/maven/2/"
        //mavenRepo "http://repository.jboss.com/maven2/"
    }

    neo4jVerison='2.0.2'

    dependencies {
//      compile("org.neo4j:neo4j-community:$neo4jVerison")
        // specify dependencies here under either 'build', 'compile', 'runtime', 'test' or 'provided' scopes e.g.
        runtime 'mysql:mysql-connector-java:5.1.29'
        runtime 'org.neo4j:neo4j-rest-graphdb:2.0.1'

//      compile(group:"org.neo4j", name:"neo4j-graphviz", version: neo4jVerison)

        compile 'org.grails:grails-datastore-gorm:3.0.4.RELEASE'
        compile 'org.grails:grails-datastore-core:3.0.4.RELEASE'

        test 'org.grails:grails-datastore-simple:3.0.4.RELEASE'
    }

    plugins {
        // plugins for the build system only
        build ":tomcat:7.0.50"

        // plugins for the compile step
        compile ":scaffolding:2.0.0"
        compile ':cache:1.1.1'
        compile ':spring-security-core:2.0-RC2'
        compile ':aws-sdk:1.7.1'
        compile ":mongodb:2.0.1"
        compile ":neo4j:2.0.0-M01"

        // plugins needed at runtime but not for compilation
        runtime ":hibernate:3.6.10.7" // or ":hibernate4:4.1.11.1"
        runtime ":database-migration:1.3.5"
        runtime ":jquery:1.10.2"
        runtime ':angularjs-resources:1.0.8'
        runtime ":resources:1.2"

        // Uncomment these (or add new ones) to enable additional resources capabilities
        //runtime ":zipped-resources:1.0.1"
        //runtime ":cached-resources:1.1"
        //runtime ":yui-minify-resources:0.1.5"
    }
}

And I am configuring datastore as follows:

grails {    
        neo4j {
            type = "rest"
            location = "http://localhost:7474/db/data/"
        }
} 

What am I missing? I could not find anything related or similar for hours now...

Thank you in advance.

Était-ce utile?

La solution

The 2.0.0-M01 release of the plugin does not yet have support for remote Neo4j instances. It only has support for embedded. My plan is to add support for rest in milestone 2.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top