我有一个项目,其中嵌入了Neo4j 1.8.2和Web管理界面。现在我将项目升级到最新的Neo4j 2.0.1。虽然在这个过程中遇到了一些障碍(因为我使用了Spring Data Neo4j),但最终一切都很顺利。但是目前我卡在了如何让Web管理界面运行。如果您有任何建议,将不胜感激。这是我在1.8版本中使用的配置。 (配置片段引用的类)
首先,“org.neo4j.server.WrappingNeoServerBootstrapper”已被弃用 - 有没有其他的替代方案可以使用?
其次,它抱怨构造函数参数“graphDatabaseService”错误...它说“bean必须是org.neo4j.kernel.GraphDatabaseAPI”(也已被弃用)。
服务器启动时(至少从我的jetty日志中可以看到),没有出现错误,但尝试浏览localhost:28473最终无响应。
有什么线索吗?
提前致谢。
package com.example;
import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.MapConfiguration;
import org.neo4j.server.configuration.Configurator;
import org.neo4j.server.configuration.ThirdPartyJaxRsPackage;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
public class Neo4jServerConfig implements Configurator {
private Configuration config;
public Neo4jServerConfig(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<>();
}
@Override
public Set<ThirdPartyJaxRsPackage> getThirdpartyJaxRsPackages() {
return new HashSet<>();
}
}
以下是bean定义:
......
......
......
如上所述,对于1.8嵌入式Neo4j,这个方法可以正常工作。
但是,在Neo4j 2.0下初始化发生了很大变化。因此,我被迫使用以下bean定义来再次运行事物:
<!-- neo4j server configuration -->
<util:map id="neo4jConfig">
<entry key="allow_store_upgrade" value="true"/>
<entry key="enable_remote_shell" value="true"/>
<entry key="online_backup_enabled" value="true"/>
<entry key="node_auto_indexing" value="true"/>
<entry key="node_keys_indexable" value="id,name,type,__type__"/>
<entry key="relationship_auto_indexing" value="true"/>
</util:map>
<bean id="graphDbFactory" class="org.neo4j.graphdb.factory.GraphDatabaseFactory"/>
<bean id="graphDbBuilder" factory-bean="graphDbFactory" factory-method="newEmbeddedDatabaseBuilder">
<constructor-arg index="0" value="${neo4j.db.path}"/>
</bean>
<bean id="graphDbBuilderFinal" factory-bean="graphDbBuilder" factory-method="setConfig">
<constructor-arg ref="neo4jConfig"/>
</bean>
<bean id="graphDatabaseService" factory-bean="graphDbBuilderFinal" factory-method="newGraphDatabase" destroy-method="shutdown" />
之后,我在这个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>
首先,“org.neo4j.server.WrappingNeoServerBootstrapper”已被弃用 - 有没有其他的替代方案可以使用?
其次,它抱怨构造函数参数“graphDatabaseService”错误...它说“bean必须是org.neo4j.kernel.GraphDatabaseAPI”(也已被弃用)。
服务器启动时(至少从我的jetty日志中可以看到),没有出现错误,但尝试浏览localhost:28473最终无响应。
有什么线索吗?
提前致谢。