Impostazione delle definizioni del flusso di documenti per un servizio web

Per impostare la Definizione del flusso di documenti, si caricano i file WSDL (Web Service Definition Language) che definiscono il servizio Web, come descritto in Configurazione hub. In alternativa, è possibile inserire le Definizioni del flusso di documenti equivalenti manualmente mediante la Console comunità.

Per inserire le Definizioni del flusso di documenti equivalenti manualmente, seguire le procedure in Creazione di un flusso di definizione di documenti. Inoltre, è necessario creare gli inserimenti di Flusso di documenti, Attività e Azione singolarmente in Servizio web del protocollo, come descritto in basso, prestando particolare attenzione ai requisiti per l'Azione e la sua 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:

Pacchetto: Nessuno (nome e codice), versione N/A
Protocollo: servizio web (nome e codice), versione 1.0
Flusso di documenti: '{<spazio nome del servizio web>}:<nome servizio web>' (nome e codice), che è richiesto per essere unico tra i flussi documenti per il protocollo del servizio Web. Questo è generalmente lo spazio nome e il nome WSDL
Attività: un'attività per ogni operazione del servizio Web, con nome e codice:

'{<spazio nome operazione>}:<nome operazione>'
 

Azioni: un'azione per il messaggio di input di ogni operazione, con nome e codice:

'{<spazio nome di identificazione elemento xml = primo figlio di of soap:body>}:<nome di
 identificazione elemento xml = primo figlio di soap:body>'
 

Le definizioni critiche sono Azioni perché WebSphere Business Integration Connect utilizza lo spazio nome e il nome di Azione per riconoscere un messaggio SOAP di richiesta del servizio web e instradarlo in maniera appropriata in base alla connessione del partecipante definita. Lo spazio nome e il nome del primo elemento XML figlio dell'elemento soap:body del messaggio SOAP ricevuto deve corrispondere al nome spazio e al nome dell'azione nelle definizioni del flusso di documenti di WebSphere Business Integration Connect.

Ad esempio, se un messaggio SOAP di richiesta del servizio web è il seguente (per un binding SOAP letterale del documento):

<?xml version="1.0" encoding="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>
 

Quindi WebSphere Business Integration Connect 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 version="1.0" encoding="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 Business Integration Connect cerca un'azione del servizio Web con questo codice: {http://www.helloworld.com/helloRPC}:helloWorldRPC

Per un binding RP, lo spazio nome e il nome del primo elemento figlio soap:body del messaggio di richiesta SOAP deve essere lo nome spazio e il nome del funzionamento del servizio web applicabile.

Per un binding letterale del documento, lo spazio nome e il nome del primo elemento figlio soap:body del messaggio di richiesta SOAP deve essere lo nome spazio e il nome del funzionamento del servizio web applicabile.

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 utilizzando uno dei seguenti metodi:

Esempio:

Il file WSDL primario 'helloworldRPC.wsdl' contiene

'<spazio nome di importazione="http://www.helloworld.com/wsdl/helloRPC.wsdl" posizione=
 "bindingRPC.wsdl"/>'
 

cIl file WSDL importato 'bindingRPC.wsdl' contiene

'<spazio nome di importazione="http://www.helloworld.com/wsdl/helloRPC.wsdl" posizione=
 "port/porttypeRPC.wsdl"/>'
 

Il file zip deve contenere il seguente:

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

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 Business Integration Connect. Vengono passati direttamente, con l'URL di endpoint del servizio originale). Questo viene chiamato WSDL privato.

Oltre al WDSL pubblico che viene salvato con l'URL privato sostituito da un URL di destinazione, come fornito dall'utente nell'input di Caricamento del flusso di documenti. Il WSDL pubblico viene fornito agli utenti del servizio Web che invocano il servizio Web nell'URL di destinazione (URL pubblico).WebSphere Business Integration Connect instrada quindi la richiesta del servizio Web in un gateway che è l'URL privato del provider del servizio web. WebSphere Business Integration Connect agisce da 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 utilizzando la Console comunità

Business Integration Connect 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 utilizzando i file WSDL multipli (questo succede quando sono stati importati i file WSDL, in un file WSDL primario), vengono caricati in un archivio ZIP.

Importante: I file WSDL nell'archivio ZIP devono essere in una directory specificata nell'elemento di importazione WSDL. Ad esempio, con il seguente elemento di importazione: <spazio nome di importazione="http://www.helloworld.com/wsdl/helloRPC.wsdl" posizione="path1/bindingRPC.wsdl"/>, la struttura della directory nell'archivio ZIP sarebbe path1/bindingRPC.wsdl. Nell'esempio successivo: <spazio nome di importazione="http://www.helloworld.com/wsdl/helloRPC.wsdl" posizione="bindingRPC.wsdl"/>, il file bindingRPC.wsdl sarebbe al livello root nell'archivio ZIP.

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

  1. Fare clic su Ammin hub > Configurazione hub > Definizione del flusso di documenti.
  2. Fare clic su Carica/Scarica pacchetti.
  3. Selezionare per Pacchetto WSDL da caricare in un file WSDL.Per URL pubblico servizio web, inserire l'URL pubblico del servizio web fornito dal Gestore comunità (che viene invocato da un partecipante). Ad esempio, http(s)://<target host:port>/bcgreceiver/Receiver. L'URL è generalmente lo stesso della definizione HTTP di produzione definito nelle destinazioni.

    Per un servizio web fornito da un un partecipante (che viene invocato dal Gestore comunità), inserire l'URL pubblico del partecipante con una stringa della query. Ad esempio, http(s)://<target host:port>/bcgreceiver/Receiver?to=<Id commerciale del partecipante>.

  4. Fare clic su Sfoglia e selezionare il file WSDL o l'archivio ZIP.
  5. 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.
  6. Per Sovrascrivi dati, selezionare per sostituire un file attualmente nel database. Selezionare No per aggiungere il file al database.
  7. Fare clic su Carica. Il file WSDL viene installato nel sistema.

Convalida dei pacchetti utilizzando i file dello schema

Un gruppo di schemi XML che descrivono i file XML che possono essere caricati mediante la console viene fornito su mezzo di installazione di Business Integration Connect. 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

Impostazione di un'interazione per un nuovo servizio Web

La procedura finale di creazione delle Definizioni del flusso di documenti su un nuovo servizio Web è quella di creazione di un'interazione con la stessa Azione del flusso di documenti del servizio web come l'Origine e la Destinazione.

Per creare le interazioni, utilizzare la seguente procedura.

  1. Fare clic su Ammin hub > Configurazione hub > Definizione del flusso di documenti.
  2. Fare clic su Gestisci interazioni.
  3. Fare clic su Crea interazione.
  4. Selezionare Passaggio autorizzato dal menu a discesa Azione alla fine della schermata (Passaggio autorizzato è l'unica opzione valida supportata in WebSphere Business Integration Connect per un servizio Web).

Copyright IBM Corp. 1997, 2004