I looked into this and the cause was the checkin I did to have
DataType.equals() account for supertype compatibility (a problem I
ran into yesterday doing something).
I think we need to accommodate two aspects which are not completely
captured today:
1. Service Contract compatibility at the logical level, which will
vary depending on whether they are remote or local (the former do not
support operation overloading, local services, the SCA default, do).
2. Whether a wire needs to have a physical mediation (datatypes,
operations) based on the source and target side service contracts
I also noticed it appears that mediation checks are performed at
runtime (DataBindingInterceptor, the mediator service). Can't we do
that at wire post-processing time and avoid these dynamic checks?
(As a separate issue, I believe this issue also highlights the need
for integration level testing to catch these things)
Raymond (and others), what do you think?
Jim
On Oct 7, 2006, at 8:10 AM, Jeremy Boynes wrote:
I'm seeing a build failure in the echo.databinding sample:
testTransform(echo.DataBindingIntegrationTestCase) Time elapsed:
1.403 sec <<< ERROR!
org.apache.tuscany.spi.wire.InvocationRuntimeException:
java.lang.IllegalArgumentException: argument type mismatch
at
org.apache.tuscany.core.databinding.impl.DataBindingInteceptor.invoke(
DataBindingInteceptor.java:76)
at
org.apache.tuscany.spi.wire.AbstractOutboundInvocationHandler.invoke
(AbstractOutboundInvocationHandler.java:60)
at
org.apache.tuscany.core.wire.jdk.JDKOutboundInvocationHandler.invoke
(JDKOutboundInvocationHandler.java:121)
at $Proxy20.call(Unknown Source)
at echo.ComponentAImpl.call(ComponentAImpl.java:50)
at echo.DataBindingIntegrationTestCase.testTransform
(DataBindingIntegrationTestCase.java:34)
This seems to have crept in between r453850 (which works for me)
and r453900 (which doesn't) - I suspect r453857 may be causing this.
--
Jeremy
---------------------------------------------------------------------
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]