tuscany-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Simon Nash <n...@apache.org>
Subject Re: Interface contract mapping and remote interfaces
Date Tue, 06 Jul 2010 18:25:38 GMT
Raymond Feng wrote:
> Your proposal looks good. It should be able to deal with most of the cases.
> There might be some tricky things on the road:
> * How to check if two data types are compatible. For java types, we can 
> check if two classes are the same. For XML types, we need to deal with 
> element as well as types.
(Minor clarification) For Java interfaces we need to look at the individual
methods and not just whether it's the same interface class.

> * How to make a remotable Java interface into WSDL 1.1. I'm not sure if 
> all the remotable interfaces can be mapped into WSDL 1.1 though, for 
> example, JAX-RS annotated interfaces, RMI or EJB interfaces. 
If they can't be mapped to WSDL then they can't be used in SCA to
interoperate with a different interface definition language.


> Thanks,
> Raymond
> /________________________________________________________________ 
> Raymond Feng
> rfeng@apache.org <mailto:rfeng@apache.org>
> /Apache Tuscany PMC member and committer: tuscany.apache.org
> Co-author of Tuscany SCA In Action book: www.tuscanyinaction.com
> Personal Web Site: www.enjoyjava.com
> /
> ________________________________________________________________/
> On Jul 6, 2010, at 12:24 AM, Simon Laws wrote:
>> Through looking at BWS_2007 I've discovered that our contract matching
>> tests are not correct. The code as it stands always returns true
>> rather than matching operation types for remote interfaces. The TODO
>> in the code says that this is because it's potentially hard to match
>> the source and target types when the source and target contracts are
>> described using different IDLs. The Assembly spec states that WSDL1.1
>> should be used as the IDL for matching remote interfaces of different
>> IDLs.
>> I'm starting down the road of providing generated interfaces as
>> required and I proposed the following approach.
>> source            target                 match action
>> =====            ====                 ==========
>> interface.java   interface.java      match as interface.java
>> interface.java   interface.wsdl     convert source to interface.wsdl 
>> and match
>> interface.wsdl  interface.java      convert target to interface.wsdl 
>> and match
>> interface.wsdl  interface.wsdl     match as interface.wsdl
>> I have some code that works for matching endpoints and endpoint
>> reference but I now realize that this isn't enough as matching is
>> applied up and down the implementation hierarchy before endpoints and
>> endpoint references are generated. So I'm looking at some surgery to
>> make generated interfaces available within the service and reference
>> model objects.
>> If anyone has previously started down this route and has comments I'd
>> be glad to hear them.
>> Regards
>> Simon
>> -- 
>> Apache Tuscany committer: tuscany.apache.org <http://tuscany.apache.org>
>> Co-author of a book about Tuscany and SCA: tuscanyinaction.com 
>> <http://tuscanyinaction.com>

View raw message