# GEF Modell/Diagramm im XML-Format speichern



## hijub (30. Aug 2011)

Hallo zusammen,

ich bin gerade dabei einen GEF-Editor zu erstellen. 
Die mit dem Editor erstellten Modelle können bereits gespeichert und geladen werden. Das Problem ist das Speicherformat. Aktuell werden die Modelle im kryptischen ByteStream(?) abgelegt. Ich muss die Modelle aber unbedingt im XML-Format speichern, damit diese zur Weiterverarbeitung genutzt werden können.

Ich weiß zwar, dass ich die doSave-Methode anpassen muss, bin mir aber nicht sicher, wie in das anstellen soll. Hat jemand eine Idee, oder evtl. sogar ein Beispiel zur Hand? Das wäre eine riesen Hilfe.


----------



## Wildcard (30. Aug 2011)

Normal nimmt man dafür ein EMF Modell


----------



## hijub (31. Aug 2011)

Im Nachhinein denke ich auch, dass es einfacher wäre den Editor aus einem Modell zu generieren und anschließend anzupassen. Der Editor ist nun aber schon fertig, es fehlen noch einige Kleinigkeiten und das XML-Geraffel.


----------



## hijub (31. Aug 2011)

Ich habs jetzt hingekriegt. Ich benutze XStream, um das Modell und die enthaltenen Elemente in XML umzuwandeln und um aus dem XML wieder das Modell herzustellen.


----------



## Wildcard (31. Aug 2011)

EMF ist fast immer die bessere Wahl. Du kannst dir auch Rückwärts aus deinem bestehenden Modell (den Interfaces + Annotationen) ein EMF Modell ableiten lassen.
Da die Interfaces die gleichen bleiben, sollte sich das nahtlos integrieren.


----------



## hijub (1. Sep 2011)

Ja, ich denke es lohnt sich EMF näher zu betrachten, allein um zu schauen bis zu welchem Grad eine Anwendung generiert werden kann und an welchen Stellen manuell angepasst werden muss. Ich habe mich bis jetzt etwas davor gescheut, naja evtl. beim nächsten Projekt.


----------



## Wildcard (1. Sep 2011)

EMF eignet sich für praktisch jede Anwendung und beschleunigt die Entwicklung rapide. Ich setze es seit Jahren ein (alles was nur entfernt nach Modell riecht wird mit EMF modelliert) und könnte und wollte es nicht mehr missen.


----------

