Hi Ted CXF has a pretty good support for RESTful services for people preferring to deal with the data only and I'm sure it'll do even better in the future. But there's still a contract out there, albeit a generic one. And the interaction model is more close to the factory-instance CORBA-esque style (POST/PUT to the parent/factoryresource then deal with the individual resources just created and then delete them). No, I'm not trying to downgrade what RESTful services can offer but want to say that personally I wouldn't discard the interfaces just yet. Providing a *coarse-grained* interface with the focus on data and how they evolve, while being *conservative* with adding more and more operations, can be a viable alternative (perhaps it sounds like a heresy :-)). And the goodness like annotating individual operations with the WS-Policy expressions is there (this operation needs these additional security options on top of the overall security, that operation may use MTOM, etc, etc).
Cheers, Sergey ----- Original Message ----- From: "Ted Neward" <[EMAIL PROTECTED]> To: <[email protected]> Sent: Thursday, July 12, 2007 9:17 AM Subject: RE: Endpoints: JAX-WS vs. WCF > But you can add that attribute in a variety of ways and get that same > goodness; add it to the contract itself in WSDL (WS-Policy), add it to the > interface (forcing implementations to recognize and support it, either > through AOP or through hand-woven support), or on the class (where it is > picked up by a container and given support, a la EJB or Spring). I'm not > sure how that changes the interface/implementation discussion. > > I realize I'm in the minority here, but I'm just curious, aside from the > RMI- and CORBA-esque interface-is-contract approach, what benefit does an > interface-based implementation really give us in the XML services world? > Besides the "we've always done it that way" answer? > > Ted Neward > Java, .NET, XML Services > Consulting, Teaching, Speaking, Writing > http://www.tedneward.com > > >> -----Original Message----- >> From: Dan Diephouse [mailto:[EMAIL PROTECTED] >> Sent: Tuesday, July 10, 2007 8:08 PM >> To: [email protected] >> Subject: Re: Endpoints: JAX-WS vs. WCF >> >> I think the interface/implementation value probably comes more in terms of >> aop/testing/mockability/etc. For instance, I can add a @Transactional >> attribute to my web service in Spring and get a tranasaction for each >> operation. Hooray for magic-spring-annotation-proxy-goodness. >> >> On 7/10/07, Ted Neward <[EMAIL PROTECTED]> wrote: >> > >> > That's not *exactly* correct, Dan; a WCF endpoint is created with a >> > Contract, which can be specified using a variety of things, including a >> C# >> > (or VB or C++/CLI or ...) interface with the appropriate custom >> attributes >> > describing the contract, or it can also be done directly on a class >> using >> > same said attributes. Most of the time when we demo WCF ("we" being >> > "myself >> > and the folks I teach with at Pluralsight"), we show the attributes on >> > interfaces because that is the model that was most widely discussed and >> > promoted for .NET Remoting and ASMX, not because it's the model that >> makes >> > the most sense. >> > >> > I'm not suggesting that Microsoft *didn't* get it right here... I'm just >> > wondering if it's really all that important to be able to slide a >> > different >> > implementation behind an interface, when the actual point of coupling is >> > not >> > the language interface, but the XML messages being sent back and forth. >> > >> > Anyway, just my $.02 worth. I, for one, am not all that upset at the >> idea >> > of >> > a single concrete class being tied to an endpoint, because I'm not >> > convinced >> > that the value of the interface-implementation idiom is that critical in >> a >> > distributed system where the contract isn't given by the interface >> itself. >> > >> > Ted Neward >> > Java, .NET, XML Services >> > Consulting, Teaching, Speaking, Writing >> > http://www.tedneward.com >> > >> > >> > > -----Original Message----- >> > > From: Dan Connelly [mailto:[EMAIL PROTECTED] >> > > Sent: Monday, July 09, 2007 11:40 AM >> > > To: [email protected] >> > > Subject: Endpoints: JAX-WS vs. WCF >> > > >> > > A JAX-WS Endpoint must be created using a service implementation. >> > > >> > > A (Microsoft) WCF Endpoint, on the other hand, is created with an SEI >> > > (C# interface), not an implementation. This allows multiple impls >> of >> > > the same service interface to be reached through the WCF Endpoint. >> The >> > > Dispatcher, which is configured separately, has rules for invoking the >> > > desired implementation. >> > > >> > > It seems to me that Microsoft got it right. Does anyone want to >> > > comment on that? >> > > >> > > Why is there no DispatchingInvoker class in CXF as a convenience when >> > > the user needs a Dispatcher? Is there a sample showing the coding >> for >> > > a dispatching Invoker? >> > > >> > > -- Dan Connelly >> > > >> > > No virus found in this incoming message. >> > > Checked by AVG Free Edition. >> > > Version: 7.5.476 / Virus Database: 269.10.2/891 - Release Date: >> 7/8/2007 >> > > 6:32 PM >> > > >> > >> > No virus found in this outgoing message. >> > Checked by AVG Free Edition. >> > Version: 7.5.476 / Virus Database: 269.10.2/893 - Release Date: 7/9/2007 >> > 5:22 PM >> > >> > >> > >> >> >> -- >> Dan Diephouse >> Envoi Solutions >> http://envoisolutions.com | http://netzooid.com/blog >> >> No virus found in this incoming message. >> Checked by AVG Free Edition. >> Version: 7.5.476 / Virus Database: 269.10.2/893 - Release Date: 7/9/2007 >> 5:22 PM >> > > No virus found in this outgoing message. > Checked by AVG Free Edition. > Version: 7.5.476 / Virus Database: 269.10.4/896 - Release Date: 7/11/2007 > 4:09 PM > ---------------------------- IONA Technologies PLC (registered in Ireland) Registered Number: 171387 Registered Address: The IONA Building, Shelbourne Road, Dublin 4, Ireland
