Distribuzione di un client del servizio Web in .NET Framework 1 e 2 per utilizzare il trasporto di IBM MQ per SOAP

Preparare una directory di distribuzione e un descrittore di distribuzione per il client. Fornire il proxy client e la classe client. Configurare code e canali IBM® MQ , avviare il servizio e verificare il client.

Prima di iniziare

Suggerimento: sviluppa e verifica il servizio e il client utilizzando Visual Studio. Modificare quindi il client per il trasporto IBM MQ per SOAP.
  1. Se si sta distribuendo un servizio utilizzando .NET Framework 1 o 2, creare il servizio come libreria ( .dll ). Distribuire utilizzando il trasporto IBM MQ per SOAP.
  2. Aggiungere la chiamata Register.Extension() al client.
  3. Aggiungere un riferimento a amqsoap.dll, che si trova in MQ_Install\bin.
  4. Modificare la proprietà Url statica nel costruttore della classe proxy client nell'URI jms:/ per il trasporto IBM MQ per SOAP.

Informazioni su questa attività

La distribuzione di un client del servizio Web per .NET Framework 1 o 2 per utilizzare il trasporto IBM MQ per SOAP richiede un ulteriore passo di distribuzione. È necessario registrare amqsoap.dll con .NET Framework. amqsoap.dll viene registrato automaticamente come parte dell'installazione del trasporto IBM MQ per SOAP, ma potrebbe essere necessario registrarlo nuovamente.

Se si utilizza il comando amqwdeployWMQService per generare i proxy client, è possibile distribuire il client utilizzando le directory generate dal comando.

Procedura

  1. Creare una directory deployDir per contenere i file di distribuzione del client
  2. Aprire una finestra comandi in deployDir.
  3. Esegui amqwsetcp per impostare CLASSPATH se il servizio deve essere eseguito su Axis 1.4.
  4. Se necessario, eseguire amqwRegisterDotNet per registrare amqsoap.dll con .NET Framework.

Esempio

L'esempio mostra la configurazione e l'output, Figura 3, da un client .NET Framework V2 . Il client, Figura 2, chiama un servizio Web che ripete il rispettivo parametro di input. La definizione Url statica, Figura 1, mostra il costruttore per il proxy client.

Figura 1. Costruttore proxy client statico
public Quote() {
    this.Url = "jms:/queue?destination=REQUESTDOTNET
               &connectionFactory=(connectQueueManager(QM1)binding(server))
               &initialContextFactory=com.ibm.mq.jms.Nojndi
               &targetService=Quote.asmx
               &replyDestination=SYSTEM.SOAP.RESPONSE.QUEUE";         
}
Figura 2. Programma client
using System;
namespace QuoteClientProgram {
    class QuoteMain {
        static void Main(string[] args) {
            try {
                IBM.WMQSOAP.Register.Extension();
                Quote q = new Quote();
                Console.WriteLine("Response is: " + q.getQuote("ibm"));
            } catch (Exception e) {
                Console.WriteLine("Exception is: " + e);
            }
        }
    }
}
Figura 3. Configurazione e output
C:\IBM\ID\DotNet\QuoteClientProgram\QuoteClientProgram>dir /s /b
C:\IBM\ID\DotNet\QuoteClientProgram\QuoteClientProgram\QuoteClientProgram.exe
C:\IBM\ID\DotNet\QuoteClientProgram\QuoteClientProgram>quoteclientprogram
Response is: IBM

Cosa fare successivamente

  1. Se si sta distribuendo il client come un IBM MQ MQI client, configurare il canale di connessione client e server.
  2. Se si sta distribuendo il client su un gestore code differente al servizio, è necessario rendere la coda di destinazione disponibile per il client. Configurare la coda di destinazione sul gestore code del servizio come una coda cluster o sul gestore code client come una definizione di coda remota.