Thanks Raymond, i have the workaround working locally... will just run
a full build before i can commit.

On Nov 19, 2007 2:43 PM, Raymond Feng <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I debugged the issue and found out there are two databinding intecerptors
> added to the invocation chain. The main issue here is that we insert
> databinding interceptors independently for the reference side and service
> side. In your case,
> the reference is defined as follows:
>
> <component name="BPELHelloWorld">
> <implementation.java class="helloworld.HelloWorld"/>
>     <reference name="helloService" target="BPELHelloWorldService">
>         <interface.wsdl
> interface="http://tuscany.apache.org/implementation/bpel/example/helloworld.wsdl#wsdl.interface(HelloPortType)"
> />
>     </reference>
> </component>
>
> a) The introspected type is a java interface for reference "helloService"
> but it's configured in the component definition with a WSDL portType. Since
> the java interface is bare style while the wsdl is doc-lit-wrapped, we add
> an interceptor for the reference side.
>
> b) For the service wire, the target (bpel) service expects data for the wsdl
> portType. When we create an invoker for SCA binding, we set the source
> interface contract to the reference interface (which is a java interface).
> We add interceptor for the service side too.
>
> So one workaround is to remove the <interface.wsdl> for reference. Then no
> databinding interceptor will be added because the interface contract of the
> component is the same as the one of the component type.
>
> We need to bypass the interceptor for a) in case of the local optimization.
> We could fix that in SCAReferenceBindingProvider and
> SCAServiceBindingProvider.getBindingInterfaceContract() to return the
> interface contract on the component type.
>
> I verified both the workaround and fix work. You can use the workaround 1st
> and I'll check in the fix after I come back from vacation next week.
>
> Thanks,
> Raymond
>
>
> ----- Original Message -----
> From: "Luciano Resende" <[EMAIL PROTECTED]>
> To: "tuscany-dev" <tuscany-dev@ws.apache.org>
> Sent: Saturday, November 17, 2007 10:16 PM
> Subject: Databinding transformation generating different invocation message
>
>
> >I have two components defined, A and B, and B has a Reference to A. If
> > I make a call to A.foo, there is only one databinding transformation
> > happening and I get the proper message on the implementation type
> > invoker :
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <message><TestPart><hello
> > xmlns="http://tuscany.apache.org/implementation/bpel/example/helloworld.wsdl";><message>Hello</message></hello></TestPart></message>
> >
> > If I make a call to B.foo, it looks like the databinding
> > transformation is happening twice, and the message reaching the
> > implementation type invoker has wrong value :
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <message><TestPart><hello
> > xmlns="http://tuscany.apache.org/implementation/bpel/example/helloworld.wsdl";><message>[hello:
> > null]</message></hello></TestPart></message>
> >
> > This can be reproduced by the two tests available in the
> > iTest/bpel/helloworld project.
> >
> > I was expecting that both messages to be equal. Is my expectation
> > right ? Any ideas or suggestions ?
> >
> >
> >
> > Any
> >
> > --
> > Luciano Resende
> > Apache Tuscany Committer
> > http://people.apache.org/~lresende
> > http://lresende.blogspot.com/
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>



-- 
Luciano Resende
Apache Tuscany Committer
http://people.apache.org/~lresende
http://lresende.blogspot.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to