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
 

Reply via email to