连接Neo4J Java驱动程序后,Neo4J Browser ServiceUnavailable失败

时间:2017-10-31 10:46:48

标签: neo4j neo4j-java-api neo4j-bolt

我经常在http://localhost:7474/browser/上使用Neo4J浏览器。但是,昨天我使用java driver连接到Neo4J并执行查询。从那以后,我无法登录Neo4J浏览器。

我使用sudo neo4j start从终端(我在ubuntu上)启动Neo4J,这是输出 -

 % sudo neo4j start
Active database: graph.db
Directories in use:
  home:         /var/lib/neo4j
  config:       /etc/neo4j
  logs:         /var/log/neo4j
  plugins:      /var/lib/neo4j/plugins
  import:       /var/lib/neo4j/import
  data:         /var/lib/neo4j/data
  certificates: /var/lib/neo4j/certificates
  run:          /var/run/neo4j
Starting Neo4j.
WARNING: Max 1024 open files allowed, minimum of 40000 recommended. See the Neo4j manual.
/usr/share/neo4j/bin/neo4j: line 411: /var/run/neo4j/neo4j.pid: No such file or directory

然后,我访问了localhost:7474,它提供了:server connect屏幕,但是一旦我输入密码,我就会收到此错误 -

  

ServiceUnavailable:WebSocket连接失败。由于Web浏览器中的安全限制,此Neo4j驱动程序无法使用此故障原因。请使用您的浏览器开发控制台确定失败的根本原因。常见原因包括数据库

截图 -

enter image description here

通常,唯一的身份验证字段是“用户名”和“密码”。我不认为我以前见过那里的“主持人”字段。

我搜索了这个错误,发现question with similar errorNeo4J KB上有一篇文章 -

  

在Neo4j 3.0及其Bolt协议的实现中,如果远程浏览器连接到Neo4j(http://:7474)并尝试进行身份验证,则可能会遇到以下错误:

但我不认为这种情况适用于此。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

正如logisima指出的那样,neo4j与Java 9不兼容。您可以安装多个版本的Java并使用环境变量在它们之间进行交换。例如,在MacOS上,你的.bash_profile

中可能有这两行
df.groupby(['studentid','subj','topic','lesson').

第一行获取正常安装的java home,第二行指向较旧的java8位置。

然后在启动neo4j实例之前,执行例如:

export JAVA_HOME=$(/usr/libexec/java_home)
export JAVA8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home