Java Web applications have needed a standards-based API for Enterprise
Content Management (ECM) for a long time. ECM is an essential requirement for
Web applications on the Internet, intranets, and extranets. ECM vendors have
proprietary APIs in various languages and this fact has inhibited ECM
architectures from being interoperable. JSR-170 for ECM defines a new set of
APIs to standardize the interface with ECM products. It aims to the make the
ECM product pluggable, much like the JDBC the API enables application code to
be independent of databases products. JSR-170 has been actively supported by
several ECM vendors and approved for public review. Its adoption is
predicated on enterprises demanding it from ECM vendors, and it remains to be
seen if these vendors will forego their unfair advantage.
In this article, we explain the lifecycle management services associat... (more)
Developing interesting and effective Java Web applications requires simple,
robust, and manageable frameworks and the tools that complement them. If you
design and develop Java applications for a living, it could be quite a
challenge to stay abreast of all the software developments and frameworks
both from commercial software vendors and the vast open source community. In
this article, we will survey the various Java Web development frameworks that
are popular today and then take an in-depth look into the JavaServer Faces
(JSF) technology.
Ever since the creation of servlets and... (more)
Content Delivery Networks (CDNs) have been used commercially to cache static
content across a distributed network. Edge Side Includes is a
W3C-acknowledged submission that supports the fragment assembly model. It
provides the semantics on how to assemble dynamic content at the edge, when
to cache content, when to expire content, etc. Java Edge Side Includes (JESI)
provides extensions to Java that make it easy to program JSPs through a
custom JSP tag library that will generate ESI markup. In this article we'll
describe how to develop applications using JESI and show its impact on ... (more)
It's not at all uncommon to see a server machine or even a desktop machine
that runs the same or multiple applications each with its own Java Runtime
Environment. In the server environment, aside from the scaling issues with
garbage collection, the real motivation was for different applications to not
be adversely affected by sharing application data and state within the same
JVM. However, launching and running multiple processes, even on a server,
comes with a price.
JVM researchers have long investigated the possibility of running multiple
applications concurrently on the same... (more)