无法在neo4j中创建带有标签的节点
问题描述:
我正在尝试使用Java
在Neo4j
中创建节点。 如果我尝试添加label
到node
由:无法在neo4j中创建带有标签的节点
node.addLabel(Labels.hostname);
但没有标签添加到节点。
,如果我尝试添加由labels
:
node = graphDb.createNode(Labels.hostname);
节点不会在所有被创建,有没有解决方案?目前我正在创建类似下面的节点,但我需要在节点上添加标签。
Node node = null;
Transaction tx = graphDb.beginTx();
try
{
node = graphDb.createNode();
node.setProperty("sources_id", id);
node.setProperty("domain", domain);
node.setProperty("eivi", eivi);
node.setProperty("hostname", hostname);
node.addLabel(Labels.hostname);
tx.success();
} catch(Exception ex) {
ex.printStackTrace();
} finally {
tx.finish();
return node;
}
答
你碰巧有一个嵌套的TX,你不标记外TX一样成功,也.finish/.close
呢?
您使用普通的普通Neo4j嵌入式数据库吗?你如何断言没有标签添加到你的节点?使用查询或按标签查找?
答
什么是您引用的标签类? node.addLabel方法需要一个Label对象,而不是一个字符串。
我目前的设置是一个完全空的远程neo4j服务器。我试图通过执行单个TX来添加这些节点,并且通过在neo4j浏览器中执行按标签查询和查询来声明。 –
我也在单个TX中试过'node.addLabel(Labels.hostname)'。但后来我发现一个异常: 'java.lang.AbstractMethodError:org.neo4j.rest.graphdb.entity.RestNode.addLabel(Lorg/neo4j/graphdb/Label;)V' –