Hello,

I try to use WSIF to make SOAP over JMS. I use Axis engine to invoke the service but I 
can't  access the reponse with WSIF: there is no part in the WSIF message output ( I 
make a getParts() ).

Here is my wsdl file of my service:

<?xml version="1.0" encoding="UTF-8" ?>
<definitions name="Price"
             
targetNamespace="http://xml.apache.org/axis/wsif/samples/jms/ServiceAvailability";
             
xmlns:tns="http://xml.apache.org/axis/wsif/samples/jms/ServiceAvailability";
             xmlns:format="http://schemas.xmlsoap.org/wsdl/formatbinding/";
             xmlns:jms="http://schemas.xmlsoap.org/wsdl/jms/";
             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
             xmlns:xsd="http://www.w3.org/2001/XMLSchema";
             xmlns="http://schemas.xmlsoap.org/wsdl/";>

  <message name="getPriceRequest">
    <part name="price" type="xsd:string" />
  </message>
  <message name="getPriceResponse">
    <!--<part name="result" type="xsd:float" /> -->
    <part name="getPriceReturn" type="xsd:float" />
  </message>

  <portType name="GetPricePortType">
    <operation name="getPrice">
      <input message="tns:getPriceRequest" />
      <output message="tns:getPriceResponse" />
    </operation>
  </portType>

  <binding name="CheckAvailabilityJMSBinding" type="tns:GetPricePortType">
    <soap:binding style="rpc"
                  transport="http://schemas.xmlsoap.org/soap/jms"/>

    <operation name="getPrice">
      <soap:operation soapAction=""/>
      <input>
        <soap:body use="encoded"
                   
namespace="http://xml.apache.org/axis/wsif/samples/jms/ServiceAvailability";
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
                   style="rpc"/>
      </input>
      <output>
        <soap:body use="encoded"
                   
namespace="http://xml.apache.org/axis/wsif/samples/jms/ServiceAvailability";
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
                   style="rpc"/>
      </output>
    </operation>
  </binding>

  <service name="PriceService">
    <port name="GetPricePortType" binding="tns:CheckAvailabilityJMSBinding">
      <jms:address destinationStyle="queue"
                   jndiDestinationName="JMS_RequestQueue"
                   jndiConnectionFactoryName="qcf"
                   
initialContextFactory="fr.dyade.aaa.jndi2.client.NamingContextFactory"
                   jndiProviderURL="localhost:16400">
        <jms:propertyValue name="SOAPAction" type="xsd:string" value=" "/>
      </jms:address>
    </port>
  </service>
</definitions>

Here is my server-config.wsdd:

<?xml version="1.0" encoding="UTF-8"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/";
     xmlns:java="http://xml.apache.org/axis/wsdd/providers/java";
     xmlns:xsd="http://www.w3.org/2000/10/XMLSchema";
     xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance";>
  <service name="PriceService" provider="java:RPC">
    
<namespace>http://xml.apache.org/axis/wsif/samples/jms/ServiceAvailability</namespace>
    <parameter value="org.axis.PriceService" name="className"/>
    <parameter value="getPrice" name="allowedMethods"/>
    <wsdlFile>c:/ws_joram/conf/wsdl/GetPrice.wsdl</wsdlFile>
  </service>
</deployment>

Here is my soap messages:

--------------------------------------------------------------------------
client -> serveur
--------------------------------------------------------------------------

<?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="ht
tp://www.w3.org/2001/XMLSchema-instance">
 <soapenv:Body>
  <ns1:getPrice soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"; 
xmlns:ns1="http://xml.apache.org/axis/wsif/samples/j
ms/ServiceAvailability">
   <ns1:price xsi:type="xsd:string">dollarprice</ns1:price>
  </ns1:getPrice>
 </soapenv:Body>
</soapenv:Envelope>

--------------------------------------------------------------------------
serveur -> client
--------------------------------------------------------------------------

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="ht
tp://www.w3.org/2001/XMLSchema-instance">
 <soapenv:Body>
  <ns1:getPriceResponse 
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"; 
xmlns:ns1="http://xml.apache.org/axis/wsif/s
amples/jms/ServiceAvailability">
   <ns1:getPriceReturn xsi:type="xsd:float">1500.5</ns1:getPriceReturn>
  </ns1:getPriceResponse>
 </soapenv:Body>
</soapenv:Envelope>

Thanks for your answer,
Thierry




Les informations contenues dans ce message sont confidentielles et peuvent constituer 
des informations privilegiees. Si vous n etes pas le destinataire de ce message, il 
vous est interdit de le copier, de le faire suivre, de le divulguer ou d en utiliser 
tout ou partie. Si vous avez recu ce message par erreur, merci de le supprimer de 
votre systeme, ainsi que toutes ses copies, et d en avertir immediatement l expediteur 
par message de retour.
Il est impossible de garantir que les communications par messagerie electronique 
arrivent en temps utile, sont securisees ou denuees de toute erreur ou virus. En 
consequence, l expediteur n accepte aucune responsabilite du fait des erreurs ou 
omissions qui pourraient en resulter.
--- ----------------------------------------------------- ---
The information contained in this e-mail is confidential. It may also be legally 
privileged. If you are not the addressee you may not copy, forward, disclose or use 
any part of it. If you have received this message in error, please delete it and all 
copies from your system and notify the sender immediately by return e-mail.
E-mail communications cannot be guaranteed to be timely secure, error or virus-free. 
The sender does not accept liability for any errors or omissions which arise as a 
result.

Reply via email to