Desidero creare un servizio SOAP con più tipi di porte esposti, in cui ogni tipo di porta ha un'interfaccia separata. Sto cercando di farlo usando JAX-WS 2.0.Pubblicazione di più porte con un servizio utilizzando JAX-WS 2.0 e @WebService
Esempio:
interface A:
ObjectA get(String name);
interface B:
ObjectB get(String name);
Service:
port A
get
port B
get
Il problema che sto avendo è che un @WebService viene definita utilizzando una singola classe/interfaccia, quindi l'unico modo sono in grado di impostare questo sta avendo due servizi distinti . Ogni servizio implementato da una classe separata con un'annotazione @WebService.
Mi piacerebbe esporre entrambe le porte utilizzando lo stesso servizio, per chiarire che entrambi fanno parte della stessa API. È possibile?
In realtà, quello che sto cercando è una sorta di supporto dello spazio dei nomi nidificato nel WSDL, quindi posso avere gli stessi metodi in spazi dei nomi diversi. Avrò metodi get/set/delete per diversi tipi di dati uno accanto all'altro, ma preferirei non metterli tutti nella stessa grande interfaccia con getA/getB e così via, dato che mi piacerebbe essere in grado per aggiungere nuovi tipi di dati in seguito senza forzare tutti i client a rigenerarsi dal nuovo set di WSDL. Qualsiasi suggerimento su come raggiungere questo obiettivo è il benvenuto, anche se ciò significa utilizzare un altro modo di generare il WSDL dal codice java.