0 Replies Latest reply on Sep 24, 2010 10:25 AM by Ryv Al

    [JBossESB, SOAPClient] Consumming web service with imported xsd

    Ryv Al Newbie

      Hi,

       

      I'm trying to consume an external webservice from Jboss ESB.

      I took the quickstart webservice_consumer_wise2 and its working fine.

       

      But when I try to call my webservice, which WSDL file is importing 3 xsd files, I got the following error when I try to call it :

       

      2010-09-24 15:46:23,921 INFO  [STDOUT] (pool-65-thread-1) Request map is: 
      2010-09-24 15:46:23,921 INFO  [STDOUT] (pool-65-thread-1) &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
      2010-09-24 15:46:23,937 INFO  [STDOUT] (pool-65-thread-1) Request map is: {external=com.vinci.park.model.wsconsumer.Contrats@184640e}
      2010-09-24 15:46:23,937 INFO  [STDOUT] (pool-65-thread-1) &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
      2010-09-24 15:46:23,984 INFO  [STDOUT] (pool-65-thread-1) parsing WSDL...
      2010-09-24 15:46:24,000 INFO  [STDOUT] (pool-65-thread-1) [ERROR] Premature end of file.
      2010-09-24 15:46:24,000 INFO  [STDOUT] (pool-65-thread-1) unknown location
      2010-09-24 15:46:24,000 INFO  [STDOUT] (pool-65-thread-1) [ERROR] Failed to read the WSDL document: file:/d:/temp/mockWSHttpBinding_IPlateformeEchange?WSDL&interface=WSHttpBinding_IPlateformeEchange&part=PlateformeEchange_1.xsd, because 1) could not find the document; /2) the document could not be read; 3) the root element of the document is not <wsdl:definitions>.

       

      It seems that the server try to locate the imported xsd file using the path configured by "wise.tmpDir" the wise-core.properties ...


      Here is my wise-core.properties :

       

      wise.tmpDir=d\:\\temp
      wise.forceImportObject=true
      wise.keepGeneratedSources=true
      wise.wsImporter.verbose=true
      wise.targetPackage=com.vinci.park.transport.wsConsumer.generated
      


      My service in jboss-esb.xml :

       

           <service category="MyServiceContrat" name="Contrats"
                  description="Contrat Webservice Consumer" invmScope="GLOBAL" >
                  <listeners>
                      <jms-listener busidref="contratEsbChannel" name="JMS-ESBListener"/>
                      <jms-listener busidref="contratGWChannel" is-gateway="true" name="JMS-Gateway"/>
                 </listeners>
                  <actions mep="RequestResponse">
                      <action name="request-mapper" class="com.vinci.park.wsconsumer.request.MyRequestAction"/>
                      <action name="soap-wise-client-action" class="org.jboss.soa.esb.actions.soap.wise.SOAPClient" >
                          <property name="wsdl" value="http://localhost:8095/mockWSHttpBinding_IPlateformeEchange?WSDL" />
                          <property name="SOAPAction" value="http://tempuri.org/IPlateformeEchange/GererContrat"/>
                          <property name="EndPointName" value="WSHttpBinding_IPlateformeEchange"/>
                          <property name="SmooksRequestMapper" value="smooks-request-config.xml"/>
                          <property name="LoggingMessages" value="false" />
                          <property name="serviceName" value="PlateformeEchange"/>
                          <property name="username" value=""/>
                          <property name="password" value=""/>
                      </action>
                      <action name="response-mapper" class="com.vinci.park.wsconsumer.request.MyResponseAction"/>
                      <action name="testStore" class="org.jboss.soa.esb.actions.TestMessageStore"/>
                  </actions>
              </service>
      

       


      The import part from my wsdl :

       

      <wsdl:types>
           <xsd:schema targetNamespace="http://tempuri.org/Imports">
                <xsd:import namespace="http://tempuri.org/" schemaLocation="mockWSHttpBinding_IPlateformeEchange?WSDL&interface=WSHttpBinding_IPlateformeEchange&part=PlateformeEchange_1.xsd"/>
                <xsd:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" schemaLocation="mockWSHttpBinding_IPlateformeEchange?WSDL&interface=WSHttpBinding_IPlateformeEchange&part=PlateformeEchange_2.xsd"/>
                <xsd:import namespace="http://schemas.datacontract.org/2004/07/PE" schemaLocation="mockWSHttpBinding_IPlateformeEchange?WSDL&interface=WSHttpBinding_IPlateformeEchange&part=PlateformeEchange_3.xsd"/>
           </xsd:schema>
      </wsdl:types>
      


      I'm stuck and don't really what's wrong ... the wise configuration or the wsdl file ...

       

      Ce message a été modifié par: Ryv Al