无法使用Tinkerpop gremlin驱动程序3.3.1通过Websocket连接将边缘添加到Janusgraph(cql-es)中

时间:2018-11-05 07:33:48

标签: gremlin janusgraph

添加,删除,更新顶点是可以的,但是当尝试添加边时,出现以下异常,说明不支持边添加。谁能建议使用远程客户端时如何添加边缘?提前致谢。

java.lang.IllegalStateException:org.apache.tinkerpop.gremlin.structure.util.reference的org.apache.tinkerpop.gremlin.structure.Vertex $ Exceptions.edgeAdditionsNotSupported(Vertex.java:175)不支持边缘添加.ReferenceVertex.addEdge(ReferenceVertex.java:47)

链接到代码: https://gist.github.com/ptclarke/45472fa5c268a6e8441e4c35615194aa

1 个答案:

答案 0 :(得分:5)

从远程请求返回的Vertex对象与图表分离,并且是不可变的,因此,如果您尝试执行以下操作:

Vertex v = g.V(id).next()
v.addEdge(...)

它会失败,因为您试图将边添加到与远程图没有连接的不可变对象。您应该使用Gremlin添加边缘,而不要直接对返回的对象进行操作:

g.V(id).addE(...).to(...)