TUSCANY-3459 describe a scenario where we have java interfaces that
are NOT annotated with the @Remotable annotation, but then marked
remotable in the SCDL using the new @Remotable attribute. In this
scenario, I found two issues in the Tuscany runtime :

   - Incompatibility of the ComponentService (marked remote in the
scdl) and the ComponentType (considered local) interfaces, and I have
raised an issue with the OASIS Spec with a proposal to relax the
interface compatibility check.

   - The other issue is related to how Tuscany checks the
componentType interface in order to identify if any data binding
transformation is required and when this interface is not annotated,
it is considered a local interface and all data binding
transformations will be skipped, failing the operation invocation. To
workaround this issue, I have local changes to
DataBindingRuntimeWireProcessor that checks for this particular
scenario and force the data binding introspection of the componentType
interface and use that to properly handle databinding transformations.
While these changes seems to be working, doing some of this changes in
the RuntimeEndpointImpl integrated with the
getComponentTypeServiceInterfaceContract seems a better place
(performance wise), but some of the dependencies are not available in
the tuscany-core module as of now.

Thoughts ?


[1] https://issues.apache.org/jira/browse/TUSCANY-3459

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

Reply via email to