Hi

I'm trying to make an external web service available at servicemix, so that
it is possible to send a request to servicemix, which transmits it to the
web service and sends back the answer. This issue is discussed very often in
this forum, but I couldn't find a solution that worked out of all these
examples. I need to get the following setting:

external SOAP-Requestor (e.g. soapUI) <=> servicemix-http(consumer) <=>
servicemix-http(provider) <=> external web service

Several problems are mentioned in this forum about SOAP-headers if using the
servicemix-http component. These problems should be solved with the new ones
(http://servicemix.apache.org/servicemix-http-new-endpoints.html). So I have
now the following setting:

- servicemix 3.3
- servicemix-http-2008.01 for consumer and provider, please see the xbean's
and wsdl's below.

When I send a request to http://localhost:8192/Agency, it times out after a
while. I tried to debug and saw that the message reaches the
provider-endpoint (at least the createRequest method of
HttpSoapProviderMarshaler is called), but isn't transmitted to the web
service.
Could someone please check my xbean-files and the wsdl-files? Thanks a lot.

xbean.xml for servicemix-http(consumer):

<beans xmlns:http="http://servicemix.apache.org/http/1.0";
       xmlns:agen="http://www.host.de/agency";
       xmlns="http://www.springframework.org/schema/beans";
       xmlns:xsi="http://http://www.w3.org/2001/XMLSchema-instance";
       xsi:schemaLocation="http://servicemix.apache.org/http/1.0
http://servicemix.apache.org/schema/servicemix-http-3.2.2.xsd
       http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd";>

  <http:soap-consumer service="agen:Agency"
                 endpoint="AgencyHttpConsumerEndpoint"
                 targetService="agen:Agency"
                 targetEndpoint="AgencyHttpProviderEndpoint"
                 locationURI="http://localhost:8192/Agency";
                 validateWsdl="false"
                 useJbiWrapper="false"
                 wsdl="ConsumerAgency.wsdl" >
  </http:soap-consumer>
</beans>

wsdl for servicemix-http(consumer) (extract):
....
  <wsdl:binding name="AgencyBinding" type="ns:AgencyPortType">
    <soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="informationRequest">
      <soap:operation soapAction="urn:informationRequest" style="document"/>
      <wsdl:input>
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal"/>
      </wsdl:output>
      <wsdl:fault name="InformationRequestFaultMsg">
        <soap:fault name="InformationRequestFaultMsg" use="literal"/>
      </wsdl:fault>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="Agency">
    <wsdl:port binding="ns:AgencyBinding" name="AgencyHttpConsumerEndpoint">
      <soap:address location="http://localhost:8192/Agency"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

xbean.xml for servicemix-http(provider):

<beans xmlns:http="http://servicemix.apache.org/http/1.0";
       xmlns:wsbridge="urn:servicemix:wsbridge"
       xmlns:agen="http://www.host.de/agency";
       xmlns:age="http://mozart16.inf.ethz.ch:8080/axis2/services";
       xmlns="http://www.springframework.org/schema/beans";
       xmlns:xsi="http://http://www.w3.org/2001/XMLSchema-instance";
       xsi:schemaLocation="http://servicemix.apache.org/http/1.0
http://servicemix.apache.org/schema/servicemix-http-3.2.2.xsd
       http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd";>

  <http:soap-provider service="agen:Agency"
                 endpoint="AgencyHttpProviderEndpoint"
                 wsdl="ProviderAgency.wsdl"
                
locationURI="http://webservicehost:8080/axis2/services/Agency";
                 useJbiWrapper="false"
                 validateWsdl="false">
   </http:soap-provider>
</beans>

wsdl for servicemix-http(provider) (extract):
...
 <wsdl:binding name="AgencyBinding" type="ns:AgencyPortType">
    <soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="informationRequest">
      <soap:operation soapAction="urn:informationRequest" style="document"/>
      <wsdl:input>
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal"/>
      </wsdl:output>
      <wsdl:fault name="InformationRequestFaultMsg">
        <soap:fault name="InformationRequestFaultMsg" use="literal"/>
      </wsdl:fault>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="Agency">
    <wsdl:port binding="ns:AgencyBinding" name="AgencyHttpProviderEndpoint">
      <soap:address
location="http://webservicehost:8080/axis2/services/Agency.AgencyHttpSoap11Endpoint"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

-- 
View this message in context: 
http://www.nabble.com/configuration-of-servicemix-http-for-web-service-bridge-tp21208841p21208841.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to