gpt4 book ai didi

neo4j - Spring Data Neo4j - 如何让 WrappingNeoServerBootstrapper 监听 0.0.0.0

转载 作者:行者123 更新时间:2023-12-02 03:54:04 26 4
gpt4 key购买 nike

一直在尝试让 WrappingNeoServerBootstrapper 在 0.0.0.0 而不是 localhost 上启动 Neo4j WebAdmin 界面。尝试了从指定 JAVA_OPTS(例如,-Dorg.neo4j.server.webserver.address=0.0.0.0)到在 WrappingNeoServerBootstrapper 的第二个构造函数参数中传递我自己的 Config 的所有方法 - 但它始终在本地主机上监听。希望有人有解决方案或例子。这是我的 Spring 配置 - 回到基础。提前致谢。

<bean id="graphDatabaseService" class="org.neo4j.kernel.EmbeddedGraphDatabase" destroy-method="shutdown">
<constructor-arg index="0" value="${com.calendr.neo4jDataDir}"/>
<constructor-arg index="1">
<map>
<entry key="allow_store_upgrade" value="true"/>
<entry key="enable_remote_shell" value="true"/>
</map>
</constructor-arg>
</bean>

<bean id="serverWrapper" class="org.neo4j.server.WrappingNeoServerBootstrapper" init-method="start" destroy-method="stop">
<constructor-arg ref="graphDatabaseService"/>
</bean>

最佳答案

我是在通读了 Neo 代码后才弄明白的。这是我最终的工作配置。

<neo4j:config graphDatabaseService="graphDatabaseService"/>

<bean id="graphDatabaseService" class="org.neo4j.kernel.EmbeddedGraphDatabase" destroy-method="shutdown">
<constructor-arg index="0" value="${com.mycompany.neo4jDataDir}"/>
<constructor-arg index="1">
<map>
<entry key="allow_store_upgrade" value="true"/>
<entry key="enable_remote_shell" value="true"/>
</map>
</constructor-arg>
</bean>

<bean id="config" class="com.mycompany.Neo4jServerConfig">
<constructor-arg>
<map>
<entry key="org.neo4j.server.webserver.address" value="0.0.0.0"/>
</map>
</constructor-arg>
</bean>

<bean id="serverWrapper" class="org.neo4j.server.WrappingNeoServerBootstrapper" init-method="start" destroy-method="stop">
<constructor-arg index="0" ref="graphDatabaseService"/>
<constructor-arg index="1" ref="config"/>
</bean>

这是配置类:

public class Neo4jServerConfig implements Configurator {

private Configuration config;

public Ne4jServerConfig(Map<String, String> config) {
this.config = new MapConfiguration(config);
}

@Override
public Configuration configuration() {
return config;
}

@Override
public Map<String, String> getDatabaseTuningProperties() {
return null;
}

@Override
public Set<ThirdPartyJaxRsPackage> getThirdpartyJaxRsClasses() {
return new HashSet<>();
}
}

关于neo4j - Spring Data Neo4j - 如何让 WrappingNeoServerBootstrapper 监听 0.0.0.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13432934/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com