Hey Jeff

----- Original Message -----
From: "Jeff Schnitzer" <[EMAIL PROTECTED]>
> From: James Strachan [mailto:[EMAIL PROTECTED]]
>
> (*) One thing I've noticed with SOAP is that developers from the
different
> camps (web/MOM, CORBA/EJB) seem to see SOAP as different things. The
> web/MOM
> guys tend to think of SOAP as a universal message format so the same
> structured message can pass across many transports http/email/news/MOM
to
> connect anything to anything in a language, platform and transport
neutral
> way which is kinda cool. CORBA/EJB guys seem to view SOAP as, well its
> CORBA
> but using XML rather than IIOP and go off building stubs/proxies/IDL
> compilers etc just like with EJB/CORBA.

> I don't think web/MOM/SOAP and CORBA/EJB are comparable technologies.

Agreed they are quite different. Though they both try to solve similar
problems like distributing your business logic, clustering or load
balancing. Some are better or worse at these kinds of things.

e.g. MOMs are usually much better at fault tolerance & real load balancing
than EJBs and Servlet engines are usually more scalable than EJB servers (in
my experience at least).


> The former are communication protocols, and the latter are (primarily)
> programming APIs.

They are both technologies that have their own APIs.
For example with web technologies we can use the Servlets API or JavaMail or
even the URL class. With MOM we can use JMS and with SOAP we can use JAXM or
JAX-RPC. So the web/MOM/SOAP technologies have APIs too.


> To emphasize this point, in the .NET universe, the
> remote invocation protocols are pluggable... you can write to their
> distributed object model API and use SOAP, DCE-RPC, IIOP, JRMP, SMTP, or
> just about anything else you can dream up.  For that matter, there is no
> reason why you couldn't create an EJB container which used HTTP/SOAP as
> the transport protocol.

Just like JAX-RPC can have any protocol underneath. I like the looks of JAXM
and JAX-RPC, neither are based on RMI or EJB at all but can be used to
implement asynchronous SOAP messaging or remote invocation respectively. Its
just a shame JAXM doesn't work with JMS yet.

So JAX-RPC is probably the closest thing around to the .NET remote
invocation protocols. Has nothing at all to do with EJBs though.
.

> I would compare EJB to the programming API for your SOAP or MOM
> implementation.

EJB is *totally* different from MOM. Though I agree some SOAP frameworks are
EJB-like or EJB-biased.


> Theoretically EJB (or any distributed object model)
> provides a high-level abstraction so you don't need to fuss with the
> complexity of all the protocols and mechanisms underneath.  Of course,
> the tradeoff is flexibility and performance.  The problem with EJB,
> IMHO, is that it has merely replaced the complexity of the underlying
> system with the even greater complexity of the EJB system, and still
> significantly inhibits your ability to write well-performing
> applications.

I'm arguing against 'distributed object models' really. Whether its DCOM,
CORBA, EJB or a SOAP framework that tries to implement 'distributed
objects'. I think the distributed object paradigm of stubs/skeletons &
distributed garbage collection doesn't work that well. I prefer to build
distributed systems using more messaging focussed techniques like web
technologies, HTTP/email/news/Servlets, SOAP messaging and MOM/JMS.

James


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to