2015-12-21 57 views
0

我正在尝试使用JavaNeo4j中创建节点。 如果我尝试添加labelnode由:无法在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; 
} 

回答

0

你碰巧有一个嵌套的TX,你不标记外TX一样成功,也.finish/.close呢?

您使用普通的普通Neo4j嵌入式数据库吗?你如何断言没有标签添加到你的节点?使用查询或按标签查找?

+0

我目前的设置是一个完全空的远程neo4j服务器。我试图通过执行单个TX来添加这些节点,并且通过在neo4j浏览器中执行按标签查询和查询来声明。 –

+0

我也在单个TX中试过'node.addLabel(Labels.hostname)'。但后来我发现一个异常: 'java.lang.AbstractMethodError:org.neo4j.rest.graphdb.entity.RestNode.addLabel(Lorg/neo4j/graphdb/Label;)V' –

0

什么是您引用的标签类? node.addLabel方法需要一个Label对象,而不是一个字符串。

相关问题