【问题标题】:Neo4j embedded server in HA modeHA 模式下的 Neo4j 嵌入式服务器
【发布时间】:2014-10-20 05:38:58
【问题描述】:

我正在尝试在 HA 模式下使用带有 spring 数据 neo4j 的 neo4j 嵌入式服务器。我收到类加载错误。我把所有的罐子都放了。 我正在尝试在 HA 模式下使用带有 spring 数据 neo4j 的 neo4j 嵌入式服务器。我收到类加载错误。我把所有的罐子都放了。

    Running Grails application
        | Error 2014-10-18 17:27:46,878 [localhost-startStop-1] ERROR spring.GrailsRuntimeConfigurator - [RuntimeConfiguration] Unable to perform post initialization config: file:./grails-app/conf/spring/resources.xml
        Message: org.neo4j.kernel.HighlyAvailableGraphDatabase
        Line | Method
        ->> 366 | run in java.net.URLClassLoader$1

        | 355 | run in ''
        | 354 | findClass in java.net.URLClassLoader
        | 425 | loadClass in java.lang.ClassLoader
        | 262 | run . . . in java.util.concurrent.FutureTask
        | 1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
        | 615 | run . . . in java.util.concurrent.ThreadPoolExecutor$Worker

    and my xml configuration is

        <?xml version="1.0" encoding="UTF-8"?>
        xmlns:context="http://www.springframework.org/schema/context"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:neo4j="http://www.springframework.org/schema/data/neo4j"
        xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd
        http://www.springframework.org/schema/data/neo4j
        http://www.springframework.org/schema/data/neo4j/spring-neo4j.xsd">

        <context:component-scan base-package="neo4j"></context:component-scan>
        <bean id="haDatabase" class="org.neo4j.kernel.HighlyAvailableGraphDatabase"
            destroy-method="shutdown">
            <constructor-arg index="0" value="target/db" />
            <constructor-arg index="1">
                <map>
                    <entry key="ha.server_id" value="1" />
                    <entry key="ha.server" value="localhost:6001" />
                    <entry key="ha.coordinators" value="localhost:2181,localhost:2182,localhost:2183" />
                </map>
            </constructor-arg>
        </bean>
        <neo4j:config graphDatabaseService="haDatabase"  base-package="neo4j"/>
        <bean id="config"
            class="org.springframework.data.neo4j.config.DataGraphNamespaceHandlerTests$Config" />
         <neo4j:repositories base-package="neo4jRepository" />

and i have dependencies are
compile "org.springframework.data:spring-data-neo4j:3.2.0.RELEASE"
compile "org.neo4j:neo4j-enterprise:2.1.5"
compile "org.neo4j:neo4j-ha:2.1.5"
compile "org.neo4j:neo4j-cluster:jar:2.0.0"

【问题讨论】:

    标签: neo4j spring-data-neo4j


    【解决方案1】:

    由于 Neo4j 1.9 中的 API 更改,您无法直接实例化 HighlyAvailableGraphDatabase。相反,您应该使用HighlyAvailableGraphdatabaseFactory。请参阅我的一个要点,展示如何使用它:https://gist.github.com/sarmbruster/6222698

    【讨论】:

      【解决方案2】:

      这个例子也可以帮助你处理java代码。 (Neo4j 2.1.2)

      https://github.com/Jotschi/neo4j-ha-example

      sn-p:

          GraphDatabaseBuilder builder = new HighlyAvailableGraphDatabaseFactory().newHighlyAvailableDatabaseBuilder(DB_LOCATION);
      
          builder.setConfig(ClusterSettings.server_id, SERVER_ID);
          builder.setConfig(HaSettings.ha_server, "localhost:6001");
          builder.setConfig(HaSettings.slave_only, Settings.FALSE);
          builder.setConfig(ClusterSettings.cluster_server, "localhost:5001");
          builder.setConfig(ClusterSettings.initial_hosts, "localhost:5001,localhost:5002");
      
          graphDb = builder.newGraphDatabase();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多