On Thu, Aug 25, 2011 at 2:49 PM, ant elder <ant.el...@gmail.com> wrote: > Looking to fix TUSCANY-3931 about the clients not working with the > wsdl in the domain registry for async services and i wonder what the > wsdl should really look like. For example with the service interface: > > @AsyncInvocation > public interface Service1AsyncServer { > @AsyncFault( {BusinessFault1.class, BusinessFault2.class} ) > public void operation1Async( String input, ResponseDispatch<String> > handler ); > } > > would we expect the generated wsdl that goes in the domain registry be > that or the equivalent synchronous version, so with an operation1 > instead of operation1Async? > > ...ant >
My immediate answer would be that it should look like the synchronous version with the asyncInvocation intent attached. When we are matching interfaces we are comparing the synchronous version because that's what the statement of the service interface looks like. Bindings have to decide how to support async invocations. We current support two models which allow native and non-native support. Our web services binding doesn't support async natively so I would guess that ?wsdl to the async endpoint results in the synch WSDL (don't know if it's appropriately decorated). If it did provide native support would we expect it to represent the async flow explicitly. No sure but we can look to see it Axis says anything about what it does in the async case. Simon -- Apache Tuscany committer: tuscany.apache.org Co-author of a book about Tuscany and SCA: tuscanyinaction.com