Wie man Kontrolle über JAXBContext in JAX-WS?

Ich bereitstellen müssen, die den gleichen web-service für jeden Kunden. Diese @javax.jws.WebService verwendet Object Methoden-Argumente und Rückgabetypen (was <xs:anyType/> im wsdl). Jede Instanz von web-service bereitgestellt wird, zusammen mit Kunden jar im classpath. Diese jar-Datei hat die bekannte Struktur und enthält JAXB-annotierten Klassen, die Kunde will zu Griff über meinen service.

Das problem ist, dass wenn der Kunde übergibt eine Instanz seiner Klasse als Methode agrument, server-side-JAXB-Kontext unmarshals es in einige seltsame xerces dom Knotens, da (wie ich es verstehe), das während der Bereitstellung Zeit nur @WebMethod und @WebService Anmerkungen wurden gescannt, die, wie bereits gesagt, sind alle den Umgang mit Object nur.

Einfach gesagt, ich brauche, um anzudeuten, JAXB bei WEB-INF/lib/customer_classes_14586.jar was bedeutet, dass eine gewisse Kontrolle über JAXBContext - Erzeugung während des JAX-WS-Implementierung.

Ist es überhaupt möglich?

Server-spezifische Lösungen sind in Ordnung (glassfish 3.1 mit U-ws-stack)

UPDATE

Ich vermisst habe, eine Sache, die wichtig sein könnte: ich bereitstellen dieser web-services als OSGI-bundles zur Laufzeit via web-admin-Konsole. Wenn ich drücken Sie die Schaltfläche deploy neue jar-Datei ist programmatisch aufgebaut, die von Kunden der Bibliothek, webservice-Klasse, wsdl und manifestiert. Also ich könnte stören im build-Prozess und geben Hinweise an diesem Punkt der Zeit, wenn das hilft.

  • Sie können übernehmen Sie die Kontrolle und den Kontext, in eine logische jax-ws-handler
InformationsquelleAutor Osw | 2011-09-04
Schreibe einen Kommentar