Domanda

Uso XFire per creare un wrapper di servizi Web attorno alla mia applicazione. XFire fornisce l'interfaccia webservice e WSDL in fase di esecuzione (o li crea in fase di compilazione, non lo so esattamente).

Molti dei nostri clienti non conoscono molto bene i servizi web e inoltre non leggono alcuna documentazione esterna come Javadoc. So che è possibile aggiungere documentazione (per parametri e metodi) direttamente al file WSDL.

Ho pensato alle annotazioni o ai file XML di Aegis ma non so come ... Conosci un modo?

Modifica: ho appena trovato questo problema JIRA ma l'ultima attività è stata il 2006. Qualche idea?

È stato utile?

Soluzione

XFire si dirige lentamente verso / dev / null. Utilizzare invece CXF . In altre parole, XFire è deprecato a favore di CXF - è praticamente lo stesso sviluppatore.

Dato che usi l'approccio Java-first, ti suggerisco di generarti WSDL una volta per tutte con lo strumento java2wsdl di CXF, quindi inserisci la tua documentazione e dici a CXF di usare che documentato WSDL invece di consentire a CXF di generare il proprio WSDL (non documentato) in fase di runtime / deploy-time.

Questa pagina ha praticamente tutto ciò che devi sapere creando un servizio web in CXF.

Altri suggerimenti

  

E il mio ultimo suggerimento riguardo a CXF - usa Aegis per l'associazione dei dati invece di JAXB. Non funziona per POJO complessi.

Nella mia esperienza non abbiamo problemi con POJO complessi e JAXB, l'unico problema è che il codice inizia a essere ingombra di JAXBElements. D'altra parte, la documentazione di Aegis è piuttosto scarsa e non ben mantenuta rispetto a CXF.

Vorrei aggiungere i miei due centesimi per quanto riguarda XFire. Abbiamo avuto un problema molto serio con XFie sotto JDK6 (sia Tomcat 6.0 che 5.5). Dai un'occhiata a tale problema . Nel nostro caso XFire con servizi Web 4+ in JDK6 porta a server delle applicazioni sospesi (deadlock dei thread, ecc.). È interessante, ma sotto JDK5 tutto era OK.

E sono completamente d'accordo con Christian Vest per quanto riguarda la migrazione a CXF da XFire. Ha senso in molti casi, ad es. ESB Mule 2 non supporta più i connettori XFire nativi ( vedi anche ).

E vorrei aggiungere che la migrazione da XFire a CXF non è un modo semplice (ad es. CXF ha dipendenze jar che sono in conflitto con alcune versioni di ibernazione vedi anche ), ma è fattibile. Nel nostro caso lo abbiamo fatto per un paio di giorni senza correzione del codice (configurazione solo primavera).

E il mio ultimo suggerimento riguardo a CXF - usa Aegis per l'associazione dei dati invece di JAXB. Non funziona per POJO complessi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top