When developing a commerce solution in today's marketplace,
a few months of time is an eternity. Missing a small window
of opportunity is the difference between a corporation that
is first to market, and a corporation that must play
catch-up for years.One way to speed time to market is to
choose a Web services platform that allows rapid application
development. This enables developers to write and maintain
code quickly, lowering development time.
Both Sun
J2EE and Microsoft .NET provide runtime mechanisms that
insulate software developers from particular dependencies. In
addition to a web service-oriented XML layer of indirection
between platforms, languages, and enterprise architectures,
Sun J2EE and .NET offer language-level intermediation via the
Java Runtime Environment (JRE) and the Common Language Runtime
(CLR)respectively.
J2EE offers several features that
accelerate time-to-market which are not found in .NET. For
example, state management services enable developers to write
less code and not worry about managing state, resulting in a
higher degree of rapid application development. State
management services enable you to build components that hold
state. Persistence services (entity beans) enable developers
to write applications without coding data access logic,
resulting in leaner, database-independent applications that
are easier to build and maintain.
Programmatic transactions allow you to have greater
transactional control. And custom tags are extremely powerful,
and empower developers and web designers to easily
collaborate.In addition to these features that enable rapid
application development, there are several features that
specific vendors offer which aid time-to-market, such as
business process management, E-Commerce components, XML-based
legacy integration, and enhanced B2B collaboration. A warning:
Customers who elect to leverage these features will sacrifice
portability. This is a consequence of J2EE architecture.
The J2EE
and Microsoft.NET approach to Web Services
If you
want to build a usable web services system, there is more than
meets the eye. Your web services must be reliable, highly
available, fault-tolerant, scalable, and must perform at
acceptable levels. These needs are no different than the
needs of any other enterprise application.
J2EE and
.NET are evolutions of existing application server technology
used to build such enterprise applications. The earlier
versions of these technologies have historically not been used
to build web services. Now that web services has arrived,
both camps are repositioning their solutions as platforms that
you can also use to build web services.The shared vision
between both J2EE and .NET is that there is an incredible
amount of 'thinking' that goes into building web services,
such as XML interoperability, load-balancing, and
transactions.
Rather than writing all that yourself, you can
write an application that runs within a container that
provides those tricky services for you. The Java
2 Platform, Enterprise Edition (J2EE) was designed to simplify
complex problems with the development, deployment, and
management of multi-tier enterprise solutions. J2EE is an
industry standard, and is the result of a large industry
initiative led by Sun Microsystems. It's important for you to
realize that J2EE is a standard, not a product. It's an
agreements between applications and the containers in which
they run. So long as both sides obey the J2EE contracts,
applications can be deployed in a variety of container
environments. The J2EE camp's goal is to give customers choice
of vendor products and tools, and to encourage best-of breed
products to emerge through competition.
The only way this
would ever happen is if the industry as a whole were
bought-into J2EE. To secure buy-in, Sun collaborated with
other vendors of eBusiness platforms, such as BEA, IBM, and
Oracle, in defining J2EE. Sun then initiated the Java
Community Process (JCP) to solicit new ideas to improve J2EE
over time. The reason Sun did this is because they had to do
so to achieve success--the best way to secure buy-in to an
idea is to involve others in defining that idea.
J2EE
J2EE application is hosted within a container, which provides qualities of service
necessary for enterprise applications, such as transactions,
security, and persistence services.
The
business layer
performs
business processing and data logic. In large-scale J2EE
applications, business logic is built using Enterprise
JavaBeans (EJB) components. This layer performs business
processing and data logic. It connects to databases using Java
Database Connectivity (JDBC) or SQL/ or existing systems using
the Java Connector Architecture (JCA). It can also connect to
business partners using web services technologies (SOAP, UDDI,
WSDL, ebXML) through the Java APIs for XML (the JAX APIs).
Business
partners
can
connect with J2EE applications through web services
technologies (SOAP,UDDI, WSDL, ebXML). A servlet, which is a
request/response oriented Java object, can accept web service
requests from business partners. The servlet uses the JAX APIs
to perform web services
.NET
The .NET
application
is hosted
within a container, which provides qualities of service
necessary for enterprise applications, such as transactions,
security, and messaging services.
The
business layer
of the
.NET application is built using .NET managed components. This
layer performs business processing and data logic. It connects
to databases using Active Data Objects (ADO.NET) and existing
systems using services provided by Microsoft Host Integration
Server 2000, such as the COM Transaction Integrator (COM TI).
It can also connect to business partner using web services
technologies (SOAP, UDDI, WSDL).
Business
partners
can
connect with the .NET application through web services
technologies (SOAP,UDDI, WSDL, BizTalk).
|