March 2002
J2EE and .NET: Doculabs Assesses ECM Architectures
by Kelley West, Surya Kalavagunta, Brook Foust and Bob Anders
Nearly every content management vendor claims that its solution can meet your enterprise content
management (ECM) needs, but not all can actually deliver on this promise. One way to discover a
product's true colors is to ask the vendor about its strategies for supporting the two major
platform "standards" that have emerged in recent months: J2EE and Microsoft's .NET. If an ECM
product is truly going to meet enterprise needs, it should incorporate significant progress toward
J2EE compatibility or support for the .NET platform.
ECM encompasses the management of all types of content: electronic documents, email, dynamic HTML
and XML, rich media assets and even code. Practically any vendor with a product that manages some
part of this spectrum can claim a place in the ECM market. But the breadth of an ECM solution's
functional capabilities is not really what makes it suitable for the enterprise. Rather, its
suitability is determined by the solution's underlying architecture.
When selecting an ECM solution, always start by assessing the application. In most cases,
organizations want ECM for applications that require traditional content management functionality
content and template creation, library services and repository management, approval processing and
collaboration and dynamic delivery that can go beyond department-level applications. They want a
single solution that delivers these features to applications that span departments, geographic
locations and even companies, while leveraging various types of content.
ECM products must communicate with all the systems involved in such applications, including
everything from ERP and CRM systems to document management, digital asset management and other ECM
products. One of the most effective ways to achieve this openness is with J2EE compatibility or .NET
support.
Sizing Up J2EE & .NET
The J2EE standard and the .NET platform are open, standards-based means for applications to
communicate and interoperate. By supporting either J2EE or .NET, content management products benefit
from the infrastructure-level services and integration capabilities that these platform approaches
deliver.
· J2EE (Java 2 Platform, Enterprise Edition) is a standard for developing enterprise
applications. It was designed by several partners, including Sun Microsystems and IBM, with the goal
of simplifying enterprise application development and providing an environment that leverages
reusable standards-based components.
Content management applications themselves can't technically achieve J2EE compatibility. Rather,
they are applications implemented using J2EE APIs, services and specifications like Enterprise Java
Bean (EJB) components and Java Server Page (JSP) frameworks. In addition, they must run on top of a
J2EE-compatible application server.
Content management products that are implemented this way are platform-, application server- and
database-independent. In addition, they inherit the strengths of the J2EE-compatible application
server, including performance, database connection pools, caching, session management, load
balancing, fault tolerance, interoperability and security. To support scalability, J2EE allows more
application servers, databases and Web servers to be added to the production environment on an
as-needed basis.
J2EE's language support is limited to Java, but because the standard is platform-independent,
organizations have a choice of best-of-breed solutions to meet their content management needs.
· .NET is Microsoft's platform for XML Web services. It includes a comprehensive family of
products built on XML and other Internet industry standards for developing and managing Web
services. .NET's design goal is to roll out a single platform that enables rapid application
development, component reuse and integration of applications through Web services.
Microsoft's .NET platform can provide content management applications with a variety of
application services via the offerings within the .NET platform family. For example, .NET uses
Application Server 2000 for clustering, load balancing and automatic failover capabilities; Internet
Security and Acceleration server (ISA) for firewall and sophisticated Web caching capabilities;
Active Directory Server and Site Server for directory services; and Host Integration Server and
BizTalk for access to legacy systems and adapters that integrate with enterprise applications and
business process management.
To support .NET, a content management product must be implemented in any of the programming
languages (such as Visual C++.NET and C#) in the .NET framework. The content management product must
also provide integrations with the .NET family of enterprise servers (such as SQL Server 2000, IIS,
Windows 2000 and Commerce Server) or provide COM objects/COM interfaces or Web services, so
applications may be created using Active Server Pages and deployed in a Microsoft environment.
The Microsoft .NET platform is a single-vendor solution with language independence and
interoperability. Specifically, a single component can be written in multiple languages (such as
Visual Basic.NET, C#, and Visual C++.NET) and can be accessed from an application written in any
other language. In addition, .NET provides strong tools for rapid application development, which
speeds time to market and increases developer productivity.
Most leading Web content management systems are written, at least in part, in Java and designed
to run on J2EE application servers.
Assessing Product Architectures
In its ongoing evaluations of a number of content management solutions, Doculabs has examined
each vendor's approach to using J2EE or .NET. The
table on page 46 assesses the most recent round of
vendors that came through our labs and describes how their products leverage J2EE and .NET to
deliver enterprise content needs.
Determining which ECM solution to leverage may come down to whether your organization has
standardized on J2EE or .NET. For example, an organization that has already made investments in
other J2EE applications (such as a portal or CRM system) running on application servers should
consider a content management product that can also run on a J2EE-compatible application. If your
organization has standardized on Microsoft and prefers a single-vendor solution, .NET would be the
better approach.
As shown in the table on page 46, the majority of content
management vendors have chosen the J2EE
route. Because they offer fully Java-based products, FatWire, Instranet, and Divine (OpenMarket) are
best positioned to fully leverage the benefits of J2EE. The remaining vendors have made some strides
but have significant work to do before they are completely J2EE-based applications.
Microsoft's Content Management Server is the forerunner in working with the .NET platform. But
other vendors are also beginning to provide support for .NET, even if it's just adding COM
interfaces to their APIs.
The reality in most enterprises is that both application server platforms coexist, and there is a
business need to access existing applications developed in J2EE from .NET and vice versa. For this
reason, we recommend looking at ECM vendors that support both COM and Java interfaces to their APIs
to provide integration flexibility.
Kelley West, Surya Kalavagunta, Brook Foust and Bob Anders are analysts with Doculabs,
a Chicago-based analyst and consulting firm that helps organizations set their IT strategies and select
and optimize technologies. Doculabs can be reached at 312-433-7793,
info@doculabs.com or www.doculabs.com.
|