Frage

Gibt es eine Möglichkeit, ein DetachedCriteria Objekt zu einem JAX-WS-Service zu übergeben?

(mein Problem ist, dass DetachedCriteria keinen nicht-arg Konstruktor, die von JAX-WS erforderlich)

War es hilfreich?

Lösung

Ich würde sagen ... bitte das nicht tun.

Es ist eine Schande, etwas zu verwenden, wie Web-Services entkoppelt und es dann auf eine Kombination spezifischer Java + Hibernate binden, nicht und Änderungen an Ihrem Hibernate Config zu erwähnen, wird wahrscheinlich die alle kräuseln durch Kunden.

Du bist besser von irgendeiner Art von Query Objekt zu erzeugen, die die Criteria nachahmt:

public class Query {

     public void setTargetClass(...) {}
     public void addPropertyEquals(...) {}

     /* more add/set instructions */

}

und dann auf der Server-Seite haben Sie eine Klasse, die die Query zu einem Criteria umwandelt.

Andere Tipps

JAXB ist Annotation-basiert, so müssen Sie DetachedCriteria und alle seine subclassses zu annotieren, bevor Sie es über JAX-WS-Schnittstellen (auf der Oberseite der Anforderung von nicht-arg Konstruktor) passieren kann. Das kaum machbar:)

Sie können aber DetachedCriteria in Bytestrom über Standard-Java Serialisierungsmechanismus serialisiert und auf der entfernten Seite deserialisieren. Ich bin damit einverstanden, dieser Ansatz eine Fehl Verwendung von XML ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top