Ich kann OrientDB nicht dazu bringen, ein OrientVertex oder ein oDocument mithilfe der Java-API zu persistieren. obwohl es funktioniert, wenn ich SQL und OCommand verwende.OrientDB kann einen Vertex nicht beibehalten, gibt ORID zurück, aber mit Nullvertex z. B. v (null) [# 3: 4]
versucht, einen Scheitel mit folg Code zu beharren
val factory: OrientGraphFactory = new OrientGraphFactory("plocal:localhost/database", "admin", "admin");
val graph = factory.getTx
val oDocument: ODocument = UserEntityMapper.toODocument(user)
println("ODocument = = "+ oDocument)
val orientVertex = new OrientVertex(graph, oDocument)
println("BEFORE orientVertex = "+ orientVertex)
graph.commit()
println("AFTER orientVertex = "+ orientVertex)
ich Debug-Ausdrucke als
oDocument = {Telefonnummer: 45435345, E-Mail: moses @ email.com, dateOfBirth: -766.198.800.000, nachName: Johnson, vorname: Moses, avatarURL: null, Logininfo: {providerID: Anmeldeinformationen, providerKey: [email protected]}, Benutzer-ID: a8d96be9-1d09-4e8f-bf8d-6a0d32e1e5aa}
VOR orientVertex = v (null) [ # 3: -2]
NACH dem orientVertex = v (null) [# 3: 4]
Wie Sie sehen können, ist der Scheitelpunkt null. Nichts bleibt bestehen. Ich bekomme eine ORID, die die Nummer der Clusterposition ändert.
Wenn ich wiederhole die die Cluster-Position speichern Nummer erhöht wird
VOR orientVertex = v (null) [# 3: -3]
NACH orientVertex = v (null) [# 3: 7]
Warum passiert das und wie kann ich das bitte beheben? Es gibt keine Ausnahmen, also kann ich nicht sagen, was falsch ist. Der Cluster/Tabelle für Benutzer existiert in der Datenbank mit allen rechten Feldern.
Ich verwende orientdb-community-2.2.0 und Scala.
grüße
Tatsächlich ist die 'null' im' v (null) [# 3: 4] 'ist der Scheitelpunkt Klassenname, bedeutet dies nicht, der Scheitelpunkt ist' null ". Versuchen Sie, den Scheitelpunkt nach seiner ID zu holen, etwas wie 'graph.getVertex (" # 3: 4 ")', was bekommen Sie? – actual
danke für die Antwort .. Ich habe versucht, was Sie vorgeschlagen und "v (null) [# 3: 4]" zurückgegeben wurde. – Tibs
toll, dass du es aussortiert hast :) – actual