2010-01-19 30 views
11

Puoi dire al meglio come testare & utilizzare i servizi Web in Eclipse?Utilizzo e test dei servizi Web in Eclipse

Avevo poca esperienza con i servizi Web, ovvero, ho utilizzato un plug-in Apache Axis che ha generato lo stub del client.

Non ho bisogno di scrivere i miei servizi Web in questo momento, utilizzare solo quelli esistenti. Possiedo Eclipse Java EE, posso scaricare qualsiasi plug-in. Cosa suggeriresti?

risposta

12

Per testare i servizi web, lo strumento migliore è IMHO soapUI che è disponibile come eclipse plugin ed è superiore di gran lunga a qualsiasi altro strumento che ho usato.

Per utilizzare i servizi Web, è importante notare che Eclipse dispone ora di JAX-WS Tools Project (nello Web Tools Incubator) che utilizza l'implementazione Apache CXF (lasciare Axis 2 die).

Per installare questo progetto, indirizzare il gestore del sito di aggiornamento Eclipse a Sito di aggiornamento del progetto di Eclipse Web Tools Platform (WTP) - http://download.eclipse.org/webtools/updates. Quando si accede al sito di aggiornamento, si dovrebbe vedere i CXF Web Services (Incubatore) funzione disponibile nella lista:

alt text

Una volta installato e configurato (Finestra> Preferenze ...> Servizi Web> CXF 2.x Preferenze), sarà possibile utilizzare il runtime CXF per testare i servizi Web (e/o creare un progetto di servizi Web CXF, vedere l'immagine di seguito anche se questo non è il tuo primo obiettivo).

alt text http://www.corneliadavis.com/blog/wp-content/uploads/2009/08/creatingcxfproject1.JPG

Troverete alcune clip video che vi mostra come creare e distribuire bottom-up e servizi Web top-down utilizzando JAX-WS Strumenti here.

4

Java EE Eclipse include già WTP (Web Tool Platform), quindi non è necessario scaricare un altro plug-in.

Tutto ciò che serve ora è quello di seguire uno dei those tutorials


WTP:

The Eclipse Web Tools Platform (WTP) del progetto si estende la piattaforma Eclipse con strumenti per lo sviluppo Web e Java EE applicazioni

Esso comprende un web services section con 2 componenti:

  • Il componente dei servizi Web JST contiene strumenti per lo sviluppo e l'interazione con i servizi Web Java.
  • Il componente dei servizi Web WST contiene strumenti per lo sviluppo di servizi Web che non sono specifici di Java.
+0

Già disponibile. Pensi che sia lo strumento migliore in assoluto per Eclipse e le mie esigenze? Ci sono soluzioni migliori? – EugeneP

+0

Secondato. Utilizzando WTP è possibile creare un client di servizi Web selezionando File> Nuovo> Altro> Servizi Web> Client servizio Web e definendo l'indirizzo per WSDL ... Dovrebbe iniziare in modo abbastanza rapido. –

+0

WTP è incluso nell'edizione Eclipse JEE. –

0

aggiungere il file WSDL per la radice di un progetto Eclipse, fare clic destro su di esso, selezionare "Web Services" e "Genera client", impostare il cursore su "Assemble" ed Eclipse genererà il codice Java che ti consentirà di comunicare con il servizio Web.

0

Credo che il modo più semplice per testare i servizi Web con Eclipse sia il plug-in Axis2, che è incluso nell'edizione Java EE. Ecco uno article su di esso. Si concentra sui servizi e non sui client, ma è ancora più semplice se si dispone già di un servizio in esecuzione e si desidera creare un client.

+0

oh, sì, l'ho provato già. Sebbene sia difficile da installare in Galileo, funziona bene. Però, suppongo, ci siano soluzioni migliori di quel plugin, non ci sono? – EugeneP

+0

Se si scaricano gli sviluppatori Eclipse per Java EE, il plug-in dovrebbe già essere lì. Ci sono framework migliori rispetto all'Asse 2 (in particolare http://cxf.apache.org/), ma penso che Axis2 sia più facile da usare con Eclipse. – kgiannakakis

1

Dai uno sguardo allo Eclipse Swordfish project.

da esso è home page:

L'obiettivo del progetto Swordfish è quello di fornire un framework SOA estendibile basata sulla collaudata tecnologia runtime Eclipse Equinox. Il framework è progettato per essere integrato da ulteriori componenti open source come un registro di servizio, un sistema di messaggistica, un motore di processo, ecc. Per formare un ambiente di runtime SOA open source completo basato su standard aperti sia stabiliti che emergenti.

+0

è ancora in incubazione, quindi forse non è del tutto buona idea usarlo in produzione. Ma perfettamente bene per l'apprendimento. – Bozho

+0

I progetti di incubazione di Eclipse sono abbastanza spesso sorprendentemente stabili molto prima che vengano promossi dall'incubazione. –

0

Il plug-in Axis2 funziona correttamente per la creazione di un test di un servizio Web tramite un WSDL. Ho solo testato un semplice servizio web SOAP in questo modo in Eclipse.

Ciò che non sono stato in grado di fare da solo è creare un altro progetto, ad esempio un progetto di app Web dinamico e creare un WSDL client da tale servizio Web. Potrei copiare il WSDL nel mio nuovo progetto ma sarebbe sciocco. Realisticamente non copiamo un WSDL che ne creiamo uno basato sul servizio Web WSDL ma attraverso un indirizzo registrato che punta a quel servizio web.

Ho letto un po 'sull'opzione CXF e ho pensato di aver aggiunto quello che mi serviva per usarlo. Finora non ho visto nessuna delle opzioni del servizio Web in Eclipse con l'eccezione di creare e testare un servizio Web nello stesso progetto che per me è di scarsa o nessuna utilità.

Problemi correlati