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
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.
Nell'orchestrazione che chiama il servizio Web utilizzato aggiungere una forma Espressione a un certo punto prima della forma Invia connessa alla porta Web.
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
Nella forma Costrutto messaggio utilizzata per costruire il messaggio Web aggiungere una forma Assegnazione messaggio se non ne è già presente una.
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