gpt4 book ai didi

java - Gremlin 通过 java 读取外部 JSON 顶点并添加到现有开放图给出了 Invalid vertexprovided 异常?

转载 作者:行者123 更新时间:2023-11-30 06:53:45 25 4
gpt4 key购买 nike

我正在尝试读取外部 JSON 顶点并将其添加到现有的开放泰坦图中。如下:

gremlin> newVertex = graph.io(GraphSONIo.build()).reader().create().readVertex(new FileInputStream("/tmp/sample_vertex.json"),null);
gremlin> v[42092]
gremlin> existingVertex = graph.V(4145).next();
gremlin> v[4145]
gremlin> existingVertex.addEdge("has",newVertex);
Invalid vertex provided: v[42092]

我已经使用 GraphSON.io 导出顶点,如下所示:

gremlin> graph.io(GraphSONIo.build()).writer().create().writeVertex(new FileInputStream("/tmp/sample_vertex.json"),g.V().next());

最佳答案

readVertex 的签名如下所示:

Vertex readVertex(InputStream inputStream, Function<Attachable<Vertex>, Vertex> vertexAttachMethod)

如果您向 vertexAttachMethod 提供 null,则不会尝试将顶点附加到图形,而您只会得到一个未附加的 StarVertex 作为结果。请考虑这种方法:

gremlin> graph = TinkerGraph.open()
==>tinkergraph[vertices:0 edges:0]
gremlin> g = graph.traversal()
==>graphtraversalsource[tinkergraph[vertices:0 edges:0], standard]
gremlin> start = graph.io(GraphSONIo.build()).reader().create().readVertex(new FileInputStream('v.json'), Attachable.Method.create(graph))
==>v[1]
gremlin> gremlin> g.V(start).as('start').
......1> addV().as('end').
......2> addE('has').from('start').to('end')
==>e[1][1-has->0]

关于java - Gremlin 通过 java 读取外部 JSON 顶点并添加到现有开放图给出了 Invalid vertexprovided 异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42205064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com