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
Co-author of a book about Tuscany and SCA: tuscanyinaction.com

Reply via email to