Condividi tramite


Come impostare dinamicamente l'URI di servizio Web utilizzato

Quando si crea una porta Web per un servizio Web utilizzato, è possibile selezionare un binding dinamico della porta. In questo caso, è necessario impostare l'URI del servizio Web utilizzato in fase di esecuzione. L'URI selezionato deve chiamare un servizio Web contenente lo stesso proxy Web del servizio Web utilizzato per creare il tipo di porta Web.

Nota

In questo argomento viene descritto come impostare a livello di codice le proprietà delle porte di trasmissione SOAP dinamiche in un'orchestrazione. Queste proprietà, tuttavia, possono essere impostate anche in un'orchestrazione o in un componente personalizzato della pipeline, indipendentemente dal fatto che la porta di trasmissione sia statica o dinamica. Per altre informazioni sui componenti della pipeline personalizzati, vedere Sviluppo di componenti della pipeline personalizzati.

I binding di porta dinamici per le porte Web hanno un comportamento diverso rispetto al binding di porta dinamico per le porte non Web. Quando si selezionano binding dinamici per una porta non Web, non è possibile utilizzare l'adapter SOAP.

Quando si utilizzano porte Web dinamiche che utilizzano un servizio Web, le proprietà della porta di trasmissione vengono impostate sui valori predefiniti. Alcuni di questi valori vengono impostati internamente e altri valori vengono impostati per impostazione predefinita sui valori impostati nelle pagine delle proprietà del gestore dell'adapter SOAP . È possibile sovrascrivere questi valori in un'orchestrazione quando si utilizzano le porte di trasmissione dinamica. Per altre informazioni, vedere Considerazioni sull'utilizzo di servizi Web.

Modificare dinamicamente l'URI di un servizio Web utilizzato

  1. Aggiungere una porta Web come descritto in Come aggiungere una porta Web. Invece di selezionare l'associazione Specifica ora porta, selezionare Associazione porta dinamica , come illustrato nella figura seguente.

    Immagine che mostra la schermata Associazione porta.

  2. Nell'orchestrazione che chiama il servizio Web utilizzato aggiungere una forma Espressione a un certo punto prima della forma Invia connessa alla porta Web.

  3. Nella forma Espressione aggiungere un'espressione simile a:

    myWebPort(Microsoft.XLANGs.BaseTypes.Address) = "http://orders/myCompany.asmx";  
    

Nota

L'URI utilizzato nell'Editor espressioni BizTalk può essere recuperato da diverse posizioni, ad esempio un messaggio in arrivo, un database SQL o un'applicazione line-of-business.

Modificare dinamicamente le proprietà della porta di trasmissione

  1. Nella forma Costrutto messaggio utilizzata per costruire il messaggio Web aggiungere una forma Assegnazione messaggio se non ne è già presente una.

  2. Nella forma Assegnazione messaggi aggiungere un'espressione simile a:

    myWebMessage(SOAP.UseSSO) = true;  
    

    Tutte le proprietà per la porta di trasmissione SOAP utilizzano lo spazio dei nomi SOAP.

    Nella tabella seguente è riportato un elenco di proprietà delle porte di trasmissione SOAP che è possibile impostare quando si utilizzano porte Web dinamiche.

Nome proprietà Tipo Descrizione
AuthenticationScheme string Metodo di autenticazione da utilizzare per chiamare il servizio Web

Valore predefinito: Anonimo

Altri valori consentiti: Basic, Digest, NTLM
Nome utente string Nome utente da specificare per l'accesso al servizio Web di destinazione.

Valore predefinito: vuoto
Password string Password utente da utilizzare per l'autenticazione con il server.

Valore predefinito: vuoto
ClientCertificate string Identificazione personale del certificato client SSL (Secure Sockets Layer).

Valore predefinito: vuoto
UseSSO Boolean Indica se la porta Web utilizzerà Single Sign-On (SSO).

Valore predefinito: False
AffiliateApplicationName string Nome dell'applicazione SSO che la porta Web utilizzerà per riscattare il ticket per le credenziali client.

Valore predefinito: vuoto
UseHandlerSetting Boolean Indica se la porta Web utilizzerà le impostazioni del proxy HTTP del gestore di trasmissione SOAP. Nota: Se la proprietà del contesto UseProxy è impostata, la proprietà di contesto UseHandlerSetting viene ignorata.

Valore predefinito: False
UseProxy Boolean Indica se la porta Web utilizzerà un server proxy per accedere al servizio Web di destinazione. Nota: Se la proprietà del contesto UseProxy è impostata, la proprietà di contesto UseHandlerSetting viene ignorata.

Valore predefinito: False
ProxyAddress string Indirizzo del proxy HTTP da utilizzare per la chiamata del servizio Web.

Valore predefinito: recuperato dalle proprietà del gestore di trasmissione SOAP.
ProxyPort Integer Porta del proxy HTTP da utilizzare per la chiamata del servizio Web.

Valore predefinito: recuperato dalle proprietà del gestore di trasmissione SOAP.
ProxyUsername string Nome utente da utilizzare per il proxy HTTP.

Valore predefinito: recuperato dalle proprietà del gestore di trasmissione SOAP.
ProxyPassword string Password da utilizzare per il proxy HTTP.

Valore predefinito: recuperato dalle proprietà del gestore di trasmissione SOAP.
ClientConnectionTimeout Int32 Valore di timeout per la connessione client HTTP.

Valore predefinito: uguale a quello predefinito ASP.NET timeout della connessione HTTP.
Typename string Specificare il nome della classe che contiene il metodo Web da richiamare.

Valore predefinito: vuoto
MethodName string Specificare il metodo della classe che verrà richiamato. Nota: Per configurare la proprietà MethodName per la porta di trasmissione SOAP statica a livello di codice, è necessario impostare Nome metodo su [Specifica successiva] nella scheda Servizio Web della finestra di dialogo Proprietà trasporto SOAP nella console di amministrazione di BizTalk Server. Per altre informazioni sulla finestra di dialogo Proprietà trasporto SOAP , vedere la finestra di dialogo Proprietà trasporto SOAP, scheda Servizio Web nella guida all'interfaccia utente e informazioni di riferimento sullo spazio dei nomi dell'API per sviluppatori.

Valore predefinito: vuoto
Assemblyname string Identifica il tipo .NET e l'assembly da caricare ed eseguire.

Valore predefinito: vuoto
UnknownHeaders string Specifica l'elenco di intestazioni SOAP sconosciute serializzato.

Valore predefinito: vuoto
Userdefined string Definisce le classi definite dall'utente

Valore predefinito: vuoto
UseSoap12 Boolean Specificare questa opzione per generare codice proxy che supporti il protocollo SOAP 1.2. Se questa opzione è False, verrà generato codice proxy compatibile con SOAP 1.1.

Valore predefinito: False

Nota

Ad eccezione dell'impostazione ClientConnectionTimeout , questi valori possono essere impostati in modo dinamico solo quando si usano associazioni di porte dinamiche. Sono di sola lettura quando si usa l'associazione Specifica ora porta. È possibile impostare l'impostazione ClientConnectionTimeout con le associazioni Specifica ora e Porta dinamica .

Vedere anche

Intestazioni SOAP con servizi Web utilizzati
Creazione di porte Web