Creazione di definizioni di flusso di documenti

Per impostare la definizione di flusso di documenti, si caricano i file WSDL (Web Service Definition Language) che definiscono il servizio Web, oppure si immettono le definizioni di flusso di documenti manualmente tramite la Console comunità.

Caricamento dei file WSDL per un servizio Web

La definizione per un servizio Web deve essere contenuta in un file WSDL primario, con estensione .wsdl, che potrebbe importare i file WSDL aggiuntivi mediante l'elemento di importazione. Se ci sono file importati, questi possono essere caricati con il file primario mediante uno dei seguenti metodi:

Ad esempio, si supponga che il file principale WSDL helloworldRPC.wsdl contenga il seguente elemento di importazione:

<import namespace="http://www.helloworld.com/wsdl/helloRPC.wsdl" location=
 "bindingRPC.wsdl"/>

E si supponga che il file WSDL importato bindingRPC.wsdl contenga il seguente elemento di importazione:

<import namespace="http://www.helloworld.com/wsdl/helloRPC.wsdl" location=
 "port/porttypeRPC.wsdl"/>

Il file deve contenere quanto segue:

Nome                   Percorso
 
 helloworldRPC.wsdl
 
 bindingRPC.wsdl
 
 porttypeRPC.wsdl               porta\

Quando una definizione del file WSDL di un servizio Web viene caricata, il WSDL originale viene salvato come Mappa di convalida. (I messaggi del servizio Web non vengono effettivamente convalidati da WebSphere Partner Gateway. Vengono passati direttamente, con l'URL di endpoint del servizio originale). Questo viene chiamato WSDL privato.

Inoltre, un WSDL viene salvato con l'URL privato sostituito dall'URL di destinazione specificato nella pagina Carica/scarica pacchetti. Il WSDL pubblico viene fornito agli utenti del servizio Web che invocano il servizio Web sull'URL di destinazione (URL pubblico). WebSphere Partner Gateway instrada quindi la richiesta del servizio Web in un gateway che è l'URL privato del provider del servizio web. WebSphere Partner Gateway funziona come un proxy, inoltrando la richiesta a un URL del provider privato che è nascosto dall'utente del servizio Web.

Sia il WSDL pubblico che quello privato (compresi i file importati) possono essere scaricati dalla Console comunità dopo che il WSDL è stato caricato.

Caricamento dei file mediante la Console comunità

WebSphere Partner Gateway fornisce un modo per importare i file WSDL. Se un servizio Web viene definito in un file WSDL singolo, è possibile caricare il file WSDL direttamente. Se il servizio Web viene definito mediante più file WSDL (questo succede quando sono stati importati i file WSDL, in un file WSDL primario), vengono caricati in un archivio compresso.

Importante: I file WSDL nell'archivio compresso devono essere in una directory specificata nell'elemento di importazione WSDL. Ad esempio, si supponga di disporre del seguente elemento di impostazione:
<import namespace="http://www.helloworld.com/wsdl/helloRPC.wsdl" 
 location="path1/bindingRPC.wsdl"/>
La struttura di directory all'interno dell'archivio compresso è: path1/bindingRPC.wsdl.

Ora, si consideri questo esempio:

<import namespace="http://www.helloworld.com/wsdl/helloRPC.wsdl"
  location="bindingRPC.wsdl"/>.

Il file bindingRPC.wsdl si trova a livello root all'interno dell'archivio compresso.

Per caricare un singolo file WSDL o un archivio compresso, utilizzare la seguente procedura.

  1. Fare clic su Ammin hub > Configurazione hub > Definizione flusso di documenti.
  2. Fare clic su Carica/Scarica pacchetti.
  3. Per Pacchetto WSDL fare clic su .
  4. Per URL pubblico del servizio Web, eseguire uno di seguenti passaggi:
  5. Fare clic su Sfoglia e selezionare il file WSDL o l'archivio compresso.
  6. Per Salva nel database, selezionare No se si desidera caricare il file in modalità di test. Quando si seleziona No, il file non viene installato nel sistema. Utilizzare i messaggi generati dal sistema visualizzati nella casella Messaggi per risolvere gli errori di aggiornamento. Selezionare per caricare il file nel database del sistema.
  7. Per Sovrascrivi dati, selezionare per sostituire un file attualmente nel database. Selezionare No per aggiungere il file al database.
  8. Fare clic su Carica. Il file WSDL viene installato nel sistema.
Convalida dei pacchetti utilizzando i file dello schema

Un insieme di schemi XML che descrivono i file XML che possono essere caricati mediante la console viene fornito su supporto di installazione di WebSphere Partner Gateway. I file caricati vengono convalidati rispetto agli schemi. I file dello schema sono un utile riferimento per la determinazione della causa di un errore quando un file non può essere caricato a causa di un XML non conforme. I file sono: wsdl.xsd, wsdlhttp.xsd, ewsdlsoap.xsd, che contengono lo schema che descrive il file di WSDL (Web Service Definition Language).

I file vengono posizionati in: B2BIntegrate\packagingSchemas

Creazione della definizione di flusso di documenti manualmente

Per immettere manualmente le definizioni del flusso di documenti, seguire le procedure illustrate in questa sezione. Inoltre, è necessario creare le voci Flusso di documenti, Attività e Azione singolarmente in Protocollo: servizio web, prestando particolarmente attenzione ai requisiti per l'Azione e la relativa relazione nei messaggi SOAP ricevuti.

Nei termini di gerarchia di Pacchetto/Protocollo/Flusso di documenti/Attività/Azione delle Definizioni del flusso di documenti, viene rappresentato un servizio Web supportato come:

Le definizioni critiche sono Azioni perché WebSphere Partner Gateway utilizza lo spazio dei nomi e il nome per riconoscere un messaggio SOAP di richiesta del servizio Web in entrata ed instradarlo in maniera appropriata in base alla connessione del partecipante definita. Lo spazio dei nomi e il nome del primo elemento XML child dell'elemento del messaggio SOAP ricevutosoap:body deve corrispondere al uno spazio dei nomi e nome dell'Azione nota nelle definizioni del flusso di documenti di WebSphere Partner Gateway.

Ad esempio, se un massaggio SOAP di richiesta del servizio web per un bind SOAP letterale del documento è:

<?xml versione="1.0" codifica="UTF-8"?>
 
 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
 xmlns:xsd=
 "http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/
 2001/XMLSchema-instance">
  <soapenv:Body>
   <nameAndAddressElt xmlns="http://www.helloworld.com/xsd/helloDocLitSchema">
    <titleElt xmlns="">Mr</titleElt>
    <nameElt xmlns="">Joe Smith</nameElt>
    <addressElt xmlns="">
     <numberElt>123</numberElt>
     <streetElt>Elm St</streetElt>
     <cityElt>Peoria</cityElt>
    </addressElt>
   </nameAndAddressElt>
  </soapenv:Body>
 </soapenv:Envelope>

WebSphere Partner Gateway cerca un'Azione del servizio web definita con questo codice:

{http://www.helloworld.com/xsd/helloDocLitSchema}:nameAndAddressElt

Per un messaggio di richiesta SOAP di stile binding RPC, ad esempio:

<?xml versione="1.0" codifica="UTF-8"?>
 
 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
 xmlns:xsd=
 "http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/
 2001/XMLSchema-instance">
  <soapenv:Body>
   <ns1:helloWorldRPC soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/
 encoding/ xmlns:ns1="http://www.helloworld.com/helloRPC">
    <name xsi:type="xsd:string">Joe Smith</name>
   </ns1:helloWorldRPC>
  </soapenv:Body>
 </soapenv:Envelope>

WebSphere Partner Gateway ricerca un'azione del servizio web definita con questo codice:

{http://www.helloworld.com/helloRPC}:helloWorldRPC

Per un binding RPC, lo spazio dei nomi e il nome del primo elemento child di soap:body di un messaggio di richiesta SOAP deve disporre di uno spazio dei nomi e di un nome dell'operazione del servizio web applicabile.

Per un binding letterale del documento, lo spazio dei nomi e il nome del primo elemento child di soap:body di un messaggio di richiesta SOAP deve essere lo spazio dei nomi e il nome dell'attributo dell'elemento XML nell'elemento parte della definizione del messaggio di input per il servizio web.

Copyright IBM Corp. 2003, 2005