I try to implement a gremlin traversal on Java.
In here, I try to insert/update score of "VISIBLE_ON" relation with calculated score according to my pipeline.
GraphTraversal t = graph.V().hasLabel("App").as("a")
.inE("RANKS").as("r")
.outV().as("k")
.choose(__.select("k").by("countryCode").is(__.in(...)),
__.math("1.0 / r").by("rank1"),
__.math("1.0 / r").by("rank2"))
.as("score")
.has("Country", "countryCode", __.select("k")
.by("countryCode")).as("c")
.inE("VISIBLE_ON").as("v")
.property("score", __.select("score"))
.select("c");
but I try to run my gremlin code, exception occurred like: org.apache.tinkerpop.gremlin.driver.exception.ResponseException: class java.lang.Double cannot be cast to class org.apache.tinkerpop.gremlin.structure.Element
Is there any suggestion?
Solved like below:
GraphTraversal t = graph.V().hasLabel("App").as("a")
.inE("RANKS").as("r")
.outV().as("k")
.choose(__.select("k").by("countryCode").is(__.in(...)),
__.math("1.0 / r").by("rank1"),
__.math("1.0 / r").by("rank2"))
.as("score")
.select("a")
.outE("VISIBLE_ON").as("v")
.property("score", __.select("score"))
.inV().as("c")
.hasLabel("Country")
.has("countryCode", __.select("k").by("countryCode")).as("c")
.select("c");
question from:
https://stackoverflow.com/questions/66065949/gremlin-double-cannot-be-cast-to-class-org-apache-tinkerpop-gremlin-structure-el 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…