2012-04-01 3 views
5

Sto facendo alcuni studi sui servizi web basati su SOAP con JAX-WS, e sto trovando molto complicato capire la parte riguardante i client. Se qualcuno potesse darmi una mano spiegandomi alcuni degli argomenti, lo apprezzerei molto. Sto usando un libro SOA e anche Google, ma mi sto davvero confondendo, ecco perché penso che qui posso ottenere una risposta più accurata, concentrata su ciò di cui ho bisogno.JAX-WS Tecniche client asincrone per la chiamata di servizi Web

Così possiamo comunicare con i servizi Web in modo sincrono e asincrono. La comunicazione sincrona ha la mancanza che entrambe le parti devono attendere l'una per l'altra fino alla fine dell'elaborazione.

clienti asincroni ci permette di comunicare in modo asincrono utilizzando 2 modelli di programmazione: 1- e 2- richiamata Polling

  • Dubbio 1: Per favore qualcuno può spiegare in modo semplice quali sono le differenze , pro e contro dei 2 modelli (richiamata e Pooling)

Quando si parla di comunicazione asincrona capisco anche che ci dovrebbe essere un modo per il produttore (Web Service), per trovare il consumatore (cliente) una volta che la l'elaborazione è finita. Ecco perché noi avere un indirizzo.

  • Dubbio 2: Può spiegare brevemente come funziona l'indirizzamento? E anche in che modo l'indirizzamento è correlato alle tecniche di callback e di polling?

Un'ultima cosa. Anche l'API di Dispatch mi confonde molto. Perché continuano a parlare di clienti dinamici.

  • Dubbio 3: Come è l'API spedizione relative alla comunicazione asincrona se stanno parlando tutto il tempo su clienti dinamici?
  • Dubbio 4: Le 2 modalità di utilizzo dell'API di invio (MESSAGE e PAYLOAD), a cosa servono e in che modo sono correlate al modello di comunicazione asincrono di JAXWS?

risposta

2
  1. Per favore qualcuno può spiegare in modo semplice quali sono le differenze, vantaggi e gli svantaggi dei 2 modelli (richiamata e Pooling)

richiamata: implementazione non è semplice .
- Vantaggio: questo approccio è più elegante/sistematico rispetto all'approccio di polling.
- Svantaggio: il client deve disporre di un meccanismo in modo che il server possa richiamarlo utilizzando la richiamata.

Polling: l'implementazione è semplice.
- Vantaggio: a causa della sua semplicità di tecnica, è universale, anche una pagina web abilitata ajax può utilizzare questa tecnica per verificare se è disponibile l'aggiornamento alla richiesta.
- Svantaggio: enormi sprechi di larghezza di banda, anche problemi di temporizzazione del client del server, come il tempo in cui il server deve mantenere la risposta nel caso in cui la richiesta di polling da parte del client non sia ancora arrivata.

2.Could spiegare brevemente come funziona l'indirizzamento? E anche in che modo l'indirizzamento è correlato alle tecniche di callback e di polling?

L'indirizzamento consente al servizio Web di comprendere le informazioni precedentemente condivise tra i sistemi di messaggistica e i provider di trasporto. Considera questo caso, inizialmente il trasporto utilizzato sarebbe HTTP sia per la richiesta di invio sia per la risposta. Quindi potresti voler cambiare una parte di questo trasporto, ad esempio inviando la risposta, solo al protocollo SMTP. Nel caso in cui stiate usando l'indirizzamento di ws, l'intera informazione relativa al trasporto e all'indirizzamento sarebbe parte dello stesso envolope di sapone che renderebbe possibile al vostro webservice modificare dinamicamente il trasporto all'invio di risposta.

Webservices indirizzamento possono essere utilizzati anche per la richiamata, dal server al client. Il servizio informa il tipo di porta della richiamata richiesta da esso nel WSDL. il client implementa questo tipo di porta e informa quindi il servizio, dell'endpoint di callback, utilizzando l'indirizzamento WS.

In parole semplici, WS rivolgendosi aggiunge tag in più per l'envolope sapone, che include informazioni che potrebbero essere presenti nelle intestazioni di trasporto soltanto, come da indirizzo, per affrontare, nome dell'azione ecc

3.How è la API di spedizione correlate alla comunicazione asincrona se parlano continuamente di client dinamici?

Future<?> response = dispatch.invokeAsync(T, AsyncHandler); 

metodo InvokeAsync è un metodo di polling. La risposta, ritorna all'utente immediatamente e può essere interrogata per il completamento. Nel frattempo, il programma client può svolgere altri compiti.La javax.xml.ws.Response implementa l'interfaccia java.util.concurrent.Future inclusa in J2SE 5.0. L'oggetto Response restituisce la risposta effettiva tramite il suo metodo get, che blocca se la risposta non è pronta per essere restituita.

4. Le 2 modalità di utilizzo dell'API di invio (MESSAGE e PAYLOAD), per cosa sono utilizzate e in che modo sono correlate al modello di comunicazione asincrono di JAXWS?
Le modalità di messaggistica non sono direttamente correlate alla comunicazione asincrona. Le modalità di messaggistica definiscono la quantità di informazioni inviate nella richiesta di servizio web. MESSAGE MODE può essere utilizzato solo se si utilizza il binding SOAP.

+0

Risposta molto utile e accurata. Grazie mille. – sfrj