Gremlin java устанавливает метку вершины, выбрасывает ClassCastException - PullRequest
1 голос
/ 05 марта 2020

Я пытаюсь использовать Gremlin java для создания вершины, если идентификатор вершины не существует и установить метку, сначала я пытаюсь это сделать:

GraphTraversalSource graph = TinkerGraph.open().traversal();
graph.V("0").fold().coalesce(__.unfold(),__.addV()).property(T.label, "0").next()

, но выдает исключение:

java.lang.ClassCastException: org.apache.tinkerpop.gremlin.structure.T$1 cannot be cast to java.lang.String

затем я пытаюсь это сделать:

GraphTraversalSource graph = TinkerGraph.open().traversal();
graph.V("0").fold().coalesce(__.unfold(),__.addV().property(T.label, "0")).next()

Это работает.

Интересно, почему не работает первый фрагмент кода.
Для моего случая использования мне нужно сделать это первым способом который решит собственность позже.

1 Ответ

1 голос
/ 05 марта 2020

Вы не можете изменить метку на уже существующей вершине. Во втором случае вы добавляете метку как часть создания вершины.

...