Ecriture des extension WSDL permettant à votre service WSIF d'accéder à un SOAP sur service JMS

Vous pouvez écrire l'extension WSDL qui permet au service WSIF d'accéder à un service SOAP qui utilise le mécanisme de transport JMS (Java™ Message Service).

Avant de commencer

Dans cette rubrique, il est supposé que vous avez choisi et configuré un fournisseur JMS lors de l'installation de WebSphere Application Server (le fournisseur de messagerie par défaut ou un autre fournisseur, par exemple le fournisseur de messagerie WebSphere MQ). Si ce n'est pas le cas, faites-le maintenant comme décrit dans Choix d'un fournisseur de messagerie.

Pourquoi et quand exécuter cette tâche

Si un message SOAP contient uniquement du XML, il peut être transmis par le biais du mécanisme de transport JMS (Java Message Service) avec le type de corps de message JMS TextMessage. Le message SOAP, y compris l'enveloppe SOAP, est encapsulé avec un message JMS et placé sur la file d'attente appropriée. Le conteneur reçoit le message JMS et en extrait le message SOAP à envoyer au client.

Utilisez la procédure suivante et les fragments de code associés pour écrire l'extension WSDL devant permettre à votre service WSIF d'accéder à un protocole SOAP via un service JMS.

Remarque : Cette procédure vous permettra également d'écrire l'extension de liaison WSDL pour SOAP sur HTTP, étant donné que la liaison SOAP sur JMS est presque identique à la liaison SOAP sur HTTP.

Procédure

Exemple de WSDL définissant une liaison SOAP sur JMS

<!-- Example: SOAP over JMS Text Message -->

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
        name="StockQuoteInterfaceDefinitions"
        targetNamespace="urn:StockQuoteInterface"
        xmlns:tns="urn:StockQuoteInterface"
        xmlns:xsd="http://www.w3.org/2000/10/XMLSchema"
        xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
        xmlns:jms="http://schemas.xmlsoap.org/wsdl/jms/"
        xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
    <wsdl:message name="GetQuoteInput">
        <part name="symbol" type="xsd:string"/>
    </wsdl:message>
    <wsdl:message name="GetQuoteOutput">
        <part name="value" type="xsd:float"/>
    </wsdl:message>

    <wsdl:portType name="StockQuoteInterface">
        <wsdl:operation name="GetQuote">
            <wsdl:input message="tns:GetQuoteInput"/>
            <wsdl:output message="tns:GetQuoteOutput"/>
        </wsdl:operation>
    </wsdl:portType>

    <wsdl:binding name="StockQuoteSoapJMSBinding" type="tns:StockQuoteInterface">
        <soap:binding style="rpc"
                 transport="http://schemas.xmlsoap.org/soap/jms"/>
        <wsdl:operation name="GetQuote">
            <soap:operation soapAction="urn:StockQuoteInterface#GetQuote"/>
            <wsdl:input>
                <soap:body use="encoded" namespace="urn:StockQuoteService"
                         encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="encoded" namespace="urn:StockQuoteService"
                     encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            </wsdl:output>
        </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="StockQuoteService">
        <wsdl:port name="StockQuoteServicePort" 
                      binding="sqi:StockQuoteSoapJMSBinding">
            <jms:address destinationStyle="queue" 
                     jndiConnectionFactoryName="myQCF"
                     jndiDestinationName="myQ"
                     initialContextFactory="com.ibm.NamingFactory" 
                     jndiProviderURL="iiop://something:900/">

                     <jms:propertyValue name="targetService"
                                        type="xsd:string"
                                        value="StockQuoteServicePort"/>

            </jms:address>

        </wsdl:port>
    </wsdl:service>
</wsdl:definitions>

Icône indiquant le type de rubrique Rubrique de tâche



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twsf_prsjwe
Nom du fichier : twsf_prsjwe.html