On Sun, 2006-04-16 at 10:59 +0100, Dan Creswell wrote:
> Gregg Wonderly wrote:
> > Sun's marketing team would not listen to the "don't use that line"
> > arguments
> > from the Jini team, or so I've heard. They wanted to take the "devices"
> > route
> > because J2ME was hot and so were a lot of other devices. The failed to
> > deliver
> > any useful message...
> >
>
> Indeed - I often wonder how much was lost in translation between
> engineers and marketing too.
With all due respect, I don't think it was just the marketing of Jini.
IMO Jini suffered (and maybe not "suffers") from the fact that it was
Java only. In order to make it useful, you have to install some software
on every box. Remember HP E-Speak? That had the same problem .. in order
to play you needed their software on every box. Yes the software was
free, but getting it on every box is not easy.
That's the big difference between CORBA, RMI, Jini, E-Speak and
WS-*/REST. In Web services and REST style services, you don't need to go
and download some software to participate .. all you need is an HTTP
server and some code to process the standard messages coming on the
wire. That is, unlike CORBA/RMI/Jini/E-Speak, Web services did not focus
on standardizing APIs but rather on standardizing wire formats. That
means that I can use Axis2 on one side, you can use Indigo, another
person can use NuSOAP etc. - as long as we all produce and consume the
same messages on the wire then life's good.
That wasn't true about CORBA until IIOP came out in v2 (or was it v3?).
Even then it took years before there were interoperable implementations.
In Jini, maybe JERI can do it now (I haven't looked at it; sorry) .. but
is it too little too late? Who knows. RMI tried to address it with
RMI/IIOP but still the entire model of distributed objects is too
tightly coupled for many wide-scale scenarios as we all know. E-Speak
never had the chance to respond to their fatal flaw because it died a
natural death before.
In comparison, there were Web services written in VB talking to services
implemented on CICS within a few months of SOAP being published.
Can you do that with Jini now? (Maybe there are JERI bindings for VB
now .. but certainly not from MSFT!)
Web services certainly have their interop problems, but most of these
are due to the fact that people try to program them using programming
languages and models which try to say "its just a matter of writing a
class and turning a few knobs to say its a service". That leads to the
XML Schema <-> type system mapping issues which are nothing short of
unsolvable in reality IMO. Platform vendors need to provide better
programming models, environments and tools or Web services will die.
In any case, to me making a technology "work" means all the pieces have
to fall into place at the exact right time. Take Java- it was in effect
originally invented as Pascal P-Code in circa 1971. Jim Gosling himself
invented a version of it again in Emacs, then almost all of it in News.
However, both were the wrong hosts for the concept of "managed code".
Java the 90s edition was created for set top boxes .. but then the
Internet happened and because the programming language was soooo much
better than the predominant language (C++), it filled a major hole: a
server side platform. So Java became a platform by chance and not by
design. Now Java has basically matured and stabilized (ignoring the
hundreds of JCP specs still being developed!) and pretty much owns the
server side for a fairly large class of applications.
Web services is also step in a long chain of efforts to make inter
language interoperability real. Is it the final solution? Most
definitely not. Does it offer sufficient value to address a reasonable
size of that integration market? I certainly believe so; only time will
tell for sure of course.
Sanjiva.
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/service-orientated-architecture/
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/