Next Generation Application Integration: From Simple Information to Web Services

RMI provides a very simple mechanism to allow both applets and servlets to communicate with one another and invoke one another's methods. RMI is a poor man's distributed object, providing Java developers with the ability to create distributed applications around a simple object-to-object synchronous communication infrastructure. RMI's power is its simplicity. Its weakness has been its difficulty communicating with other distributed objects, including CORBA ORBs. Although both RMI and IIOP are based on TCP/IP (most of IIOP and RMI, actually), they still don't speak the same language.

With the advent of RMI-IIOP, this weakness has been overcome. RMI-IIOP provides developers with an implementation of the Java RMI API over IIOP, allowing them to write remote interfaces between clients and servers, and implement them with just Java technology and Java RMI APIs.

RMI over IIOP is an exciting development because it allows developers to combine the best features of RMI with the best features of CORBA. Until now, we had to "fudge" such connections or depend on proprietary solutions. RMI over IIOP allows us to work entirely within the Java programming language, with no separate IDL or mapping to learn. This approach is much more flexible. It allows us to pass any serializable Java object between application components, including C++ and Smalltalk CORBA ORBs.

This marriage of RMI with IIOP provides more choices for developers who want to mix and match environments. It provides product developers with a better common object-to-object communication mechanism.

Middleware Platforms Emerging

Middleware is becoming a part of platforms. J2EE is simply taking the lead. J2EE is significant in that it is a platform layer that runs within almost all platforms, including Windows XP, Linux, and OS/390. Developers can write an application for J2EE and run it on any operating system that supports J2EE. J2EE applications can communicate with other J2EE applications using the J2EE middleware, as described earlier in this chapter.

Windows XP is another platform that provides native middleware support. Although much more closed and proprietary than J2EE, Windows XP ships with a COM+ ORB, a component transaction layer (based on MTS), a messaging middleware layer (based on MSMQ), and even rudimentary middleware management services. Microsoft dominates the desktop and much of the server marketplace. It knows how to make the use of middleware easy. J2EE and Microsoft Windows XP will battle it out toward the end of the year, once the marketplace figures out they are going after the same e-Business applications.

Middleware is moving from a product-oriented technology to something that is becoming embedded in platforms just like other operating system services (e.g., disk I/O). This is a move in the right direction, considering that popular middleware is retooling for higher-level activities such as process automation, collaboration, and B2B information management. What was unique and innovative technology only a few short years ago is now just another commodity. So goes computing.

Категории