ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matthieu Riou" <matth...@offthelip.org>
Subject Re: Calling remote service without partnerlink
Date Thu, 20 Dec 2007 16:33:49 GMT
On Dec 20, 2007 5:27 AM, EXTERNAL Schmid Markus (Diplomand; CI/TMP) <
external.Markus.Schmid2@de.bosch.com> wrote:

>  Hi,
>
> thanks for the fast answer
>
> Ok but if I have to declare a partnerlink how can I refer to a wsdl
> which does not provide a partnerlinktype and which I cannot change?
>

In that case you have to create a "bridge" WSDL that imports the original
WSDL that can't be changed and adds the partnerLinkType definitions. So
something like:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="Client_And_SO-04_Pool_PLT" targetNamespace="
http://www.example.com/Client_And_SO-04_Pool_PLT" xmlns:tns="
http://www.example.com/Client_And_SO-04_Pool_PLT" xmlns:portTypeNS2="
http://www.example.com/Client_To_SO-04_Pool" xmlns:plnk="
http://schemas.xmlsoap.org/ws/2004/03/partner-link/" xmlns:wsdl="
http://schemas.xmlsoap.org/wsdl/">
  <wsdl:import namespace="http://www.example.com/Client_To_SO-04_Pool"
location="SO_04-Client_To_SO-04_Pool.wsdl"/>
<plnk:partnerLinkType name="Client_And_SO-04_Pool_PLT">
    <plnk:role name="SO-04_Pool_Role"
portType="portTypeNS2:Client_To_SO-04_Pool_PortType"/>
</plnk:partnerLinkType>
</wsdl:definitions>

Just be careful with the namespaces (hint: tooling helps) :)

Matthieu


>
>  <wsdl:message name="acceptMessageRequest">
>  <wsdl:part name="in0" type="xsd:string" />
>  </wsdl:message>
>  <wsdl:message name="acceptMessageResponse">
>  <wsdl:part name="acceptMessageReturn" type="xsd:string" />
>  </wsdl:message>
>  <wsdl:portType name="_Proxy6">
>  <wsdl:operation name="acceptMessage" parameterOrder="in0">
>  <wsdl:input message="impl:acceptMessageRequest"
> name="acceptMessageRequest" />
>  <wsdl:output message="impl:acceptMessageResponse"
> name="acceptMessageResponse" />
>  </wsdl:operation>
>  </wsdl:portType>
>  <wsdl:binding name="LogSoapBinding" type="impl:_Proxy6">
>  <wsdlsoap:binding style="rpc"
> transport="http://schemas.xmlsoap.org/soap/http" />
>  <wsdl:operation name="acceptMessage">
>  <wsdlsoap:operation soapAction="" />
>  <wsdl:input name="acceptMessageRequest">
>  <wsdlsoap:body
> encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
> namespace="http://DefaultNamespace" use="encoded" />
>  </wsdl:input>
>  <wsdl:output name="acceptMessageResponse">
>  <wsdlsoap:body
> encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
> namespace="http://CentralServices_Se2889.dev1.com" use="encoded" />
>  </wsdl:output>
>  </wsdl:operation>
>  </wsdl:binding>
>  <wsdl:service name="_Proxy6Service">
>  <wsdl:port binding="impl:LogSoapBinding" name="Log">
>  <wsdlsoap:address location="http://Se2889.dev1.com:8089/services/Log"
> />
>  </wsdl:port>
>  </wsdl:service>
>  </wsdl:definitions>
>
> cheers,
> Markus
>
>
> >> Using an invoke I always have to provide a partnerlink ( so it seems
> to
> >> me as it looks in the specs ) so how can I construct an invoke for
> this
> >> service using only the provided information, maybe with an example?
>
> >partnerLinks are a part of the BPEL specification, not WSDL. So, it's
> >not a bug that your WSDL document doesn't provide any partnerlink.
>
> >You MUST declare such informations inside your business process
>
> >cheers,
>
> >--
> >  Sebastian
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message