2016-07-25 23 views
1

Ich verwende "com.michaelpollmeier" %% "gremlin-scala" % "3.2.0.1" zusammen Orientdb einige Domain-Objekte als Vertices zu einem Orientdb zu speichern (v2.1.20)Vertex Schreiben mit Gremlin-scala-Wrapper mit <code>"com.michaelpollmeier" % "orientdb-gremlin" % "3.2.0-incubating.1-SNAPSHOT"</code>

Ich verstehe es recht ist Code bleeding edge aber ich würde wie einige Hinweise zu verstehen, warum diese Ausnahme der Fahrer werfen:

verursacht durch: com.orientechnologies.orient.core.exception.ODatabaseException: Fehler auf Deserialisierung von Serializable bei com.orientechnologies.orient.core .serialization.serializer.record.binary .OSerializableWrapper.fromStream (OSerializableWrapper.java:47) bei com.orientechnologies.orient.core.serialization.serializer.record.binary.ORecordSerializerBinaryV0.readSingleValue (ORecordSerializerBinaryV0.java:382) ... 13 weitere Verursacht durch: java .lang.ClassNotFoundException: com.esc.domain.Address

Jeder Hinweis sehr zu schätzen würden, was auf :)

geht am besten, Edoardo

Antwort

1

schließlich die Ursache gefunden (siehe github issue darüber) im Scala-Makro, das in gremlin-scala verwendet wird, um eine Fallklasse vor dem Speichern in einen Vertex umzuwandeln. Kurz gesagt, es wird nicht mehr in Instanzen von Member-Case-Klassen wiederholt und sendet, was auch immer dort ist.

Lösung ist das Makro zu verzichten und eine benutzerdefinierte gremlin.scala.Marshallable[YourCC]

zu implementieren