Goodbye NEO, hello Enterprise Java Beans
Sun's C++ CORBA services to go the way of assembler language; OpenStep's a goner too
Sun has also scrapped its Solaris OpenStep initiative.
A few years back, Sun hatched NEO (then called DOE or Distributed Objects Everywhere) as a C++ implementation of the Object Management Group's CORBA distributed object architecture. It included an object request broker as well as higher level services like naming services and persistent object availability. At that time, Sun had visions of enterprise developers creating and deploying distributed, object-oriented applications on its NEO platform and using its Solaris OpenStep technology as a front-end development and operating environment for the back-end NEO applications -- all of which, of course, would run on Solaris.
Then came Java.
Solaris Director of Product Marketing Brian Croll says that after Java, "it was pretty clear that we needed to move forward in the object-oriented space." He says that Solaris OpenStep, developed in partnership with NeXT Software Inc., was the first to go because "it was obvious that Java was the front-end environment for the future." Though the products had only been shipping for a year, Solaris OpenStep and the WorkShop OpenStep development environment were both quietly canned by SunSoft this September.
But now Sun appears to be banking on Java on the back end as well. According to Croll, "we think the CORBA world is dividing into two markets: platforms and middleware." And the middleware now "serves a different purpose from what we're doing with Solaris." Croll says that while companies like Visigenic, Iona, and BEA are coming to dominate the middleware space, vendors like Sun and IBM are focusing on the platforms. Referring to Sun's soon-to-be announced API specifications, he says, "we want to be the best Java Enterprise Beans environment in the universe with Solaris."
Beans in the Enterprise; IIOP in Solaris
According to Sun's Croll, the NEO technology is working its way into two places: it is being "baked" into the base Solaris operating environment, he says, and is also being put into JavaSoft's Java Platform for the Enterprise -- Sun's API specifications for enterprise-level Java applications. Sun says it will continue to support existing NEO customers.
The Platform for the Enterprise includes the Enterprise JavaBeans component architecture (which is expected to be publicly released "at any time now," according to JavaSoft) and the following APIs: Java Database Connectivity (JDBC), Java Remote Invocation (Java RMI), Java Interface Definition Language (Java IDL), Java Transaction Services (JTS), Java Naming and Directory Interface (JNDI), Java Management (JMAPI), and Java Message Services (JMS).
Croll says that, for example, NEO's Joe ORB, which provides Java to CORBA connectivity, has already been integrated into Java IDL.
One JavaSoft product manager, who asked not to be identified, says that exactly what NEO technology goes where is still "being hashed out right now." According to the product manager, "NEO is intended to become part of Enterprise Java Beans," but exactly which services will end up where will become clearer after JavaSoft makes its EJB specification public.
J.P. Morgenthal, a Java analyst with NC.Focus says, "It doesn't make sense for Sun at this point and time to do anything in terms of distributed objects that don't have Java as a central focus." He explains, "NEO was really a competitor against BEA and Iona, and does Sun really want to compete there? They don't have their own database; they don't have their own transaction processing monitor; and I don't see why they'd want their own ORB and all the accommodating services."
On the Solaris side, Sun will migrate some Common Object Request Broker Architecture (CORBA) class libraries and the transport protocol IIOP into Solaris, giving the operating system some low-level object request broker functionality.
Morgenthal expects that Sun is planning an implementation of a JDK 1.2 feature called "Doors," which would allow Java applications to expose themselves as CORBA objects. He says that "there are no services that come [with this kind of low-level ORB]. For any advanced services you have to buy an ORB vendor's implementation."
Microsoft takes opposite tack
Morgenthal notes that Sun's direction is exactly the opposite of Microsoft's, which includes plans for advanced middleware like message queuing and transaction monitoring to be build into NT 5.0. "You're getting every kind of middleware you want with this server," he says. "It's the ultimate middleware solution. Buy an OS and you get every kind of middleware in the world you want...except for CORBA."
So will NEO disappear? Not according to its former champion at Sun, Bud Tribble (now Sun's Java Architect). "Nothing ever goes away," he says, "COBOL is still with us. I expect there to be value for the rest of my lifetime in native implementations of these various things [NEO and OpenStep]." Tribble's long-term prediction, however, is "that people will view compiled languages the same way we view assembly languages today." Assembly language has a place, he says, but not necessarily for ordinary, "sane" people.
Niall McKay is a senior editor with InfoWorld, a SunWorld affiliate.
If you have technical problems with this magazine, contact firstname.lastname@example.org