Raymond Feng wrote:
Please see my comments inline.
Thanks,
Raymond
----- Original Message ----- From: "Jean-Sebastien Delfino"
<[EMAIL PROTECTED]>
To: <tuscany-dev@ws.apache.org>
Sent: Monday, February 25, 2008 8:36 AM
Subject: PassByValueInterceptor always copying data now?
With the latest trunk code, PassByValueInterceptor seems to always
copy data returned by my Java component to my service (with a feed
binding).
Is this on the service binding side? If it's for the reference binding,
you can simply have the binding invoker implements the PassByValueAware
interface and return true for the allowsPassByReference() method. The
final SPI is being discussed on the ML.
I don't think it's right (and it's actually breaking me now as the
JAXBDataBinding fails to copy my objects).
Is it the failure that was reported by Luciano
(CloneNotSupportedException)? If so, I have a fix coming in.
Or is the feed binding not doing what it should do to tell the
databinding framework not to copy?
The changes are in progress. At this moment, the PBV is still an
interceptor if none of the invokers return true for
allowsPassByReference(). There is an interim way you can use to disable
it by calling InvocationChain.setAllowsPassByReference(true).
BTW it's again another example of some databinding magic happening on
the invocation chain and making things complicated to follow. Where
are we with the discussion about not having so much databinding magic
happen at invocation time?
As we discussed before, the control should be a combination of the
client, invokers and runtime. But we are yet to refactor the code so
that the client of the invocation chain handles the PBV and PBV
interceptor becomes a utility class.
How can I, in my binding, disable the automatic databinding processing?
--
Jean-Sebastien
OK, Thanks. I'm short-circuiting JAXBDataBinding.copy() for now in my
local copy until you resolve the above issues.
Another issue: when JAXBDataBinding creates a new JAXB Context it does
not pass all the necessary classes, causing JAXB to throw:
javax.xml.bind.JAXBException: class
org.apache.tuscany.sca.implementation.data.collection.Item nor any of
its super class is known to this context.
--
Jean-Sebastien
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]