Equinox XML based Comm. Client/Server

h0nkh0nkh0nkh0nk

Grünschnabel
Hi,

brauche Ratschläge ;)
Client ist ein Eclipse Plugin...
Server soll Equinox basierent sein.
Die Kommunikation soll rein XML-basiert sein..
Hatten uns überlegt JAXB zu benutzen zum marshalling und unmarshalling, die JAXB klassen wären in einem eigenen bundle, sodass der client und server sie nutzen können.
Jedoch müssten wir dann selbst ein mapping von den jaxb-klassen zu unseren hibernate-klassen machen, welches leider durch die xml struktur, ein großeres instanceof gecastet werden würden, da mehere element eine liste vom typ object haben bzw einer anderen superklasse.

nach googlen hab ich hyberjaxb gefunden (ka ob des in equinox t), dies könnt das mapping zwishcen xml <-> java <-> hibernate in "Einem" machen... Jedoch sollen auch klassen für den client bereitgestellt werden damit er auch des xml <-> java umwandeln kann.

Daher die Frage, wie mappe ich am besten jaxb klassen zu hibernate klassen
oder gibt es ganz andere Ansätze, die es sich lohnen würden, anzuschauen..

Danke
 
Hallo,

so wie du dein Szenario beschreibst sieht es ganz so aus, als wolltest du deine (Persistierbaren) Entities direkt verschicken.
Was spricht dagegen deine Entities auch mit entsprechenden JAXB Annotations auszustatten (außer, dass dann die Entities mit JAXB Informationen "verseucht" sind...)

Wenns eine reine XML Kommunikation sein soll würde ich dir JAX-WS (https://jax-ws.dev.java.net/ , http://www.tutorials.de/forum/java/268800-einfache-webservices-unter-java-6-mustang.html , )im RPC Modus oder JAX-RS (https://jsr311.dev.java.net/ , https://jersey.dev.java.net/ , http://www.restlet.org/) empfehlen.

Gruß Tom
 
danke erstmal.
ich will nicht umbedingt die entites direkt verschicken, es darf ruhig ein mapping von entites auf jaxb klassen geschehen, wäre mir sogar am liebsten, weil ich wollte die gleichen klassen im client verwenden. Die klassen im client sollten jedoch nicht die hibernate annotations etc enthalten... find ich unschön...
jax-ws scho ich mir gleich mal an

Danke nochmal ;)
 
Zurück