Java EE: where's the Ajax?

Java EE: where's the Ajax?

Summary: The corporate suit meets the cool, laid-back dude. (No, this is not the latest Apple commercial.

TOPICS: Enterprise 2.0

The corporate suit meets the cool, laid-back dude. (No, this is not the latest Apple commercial.) In the emerging SOA-Web 2.0 paradigm, Web 2.0ers with their mashups, rich client applications, and community-based development approaches may be able to take advantage of loosely coupled services that can call corporate data and applications.

But, alas, such a perfect union does not exist yet. Stephen Maryka, CTO and co-founder of ICEsoft Technologies, doesn't believe Java Enterprise Edition -- the SOA platform of choice for many enterprises -- is equipped to handle the emergence of Web 2.0.  In a new commentary posted at SearchWebServices, he points out that "approaches are emerging to support Web 2.0 capabilities, most of which rely heavily on JavaScript implementations that leverage Ajax techniques." 

However, while Web 2.0 has increasingly become mostly about Ajax, Java EE was designed before Ajax really hit in a big way. As Maryka puts it:

"In the Java EE specification, JavaServer Faces provides the presentation layer, but its current revision pre-dates the popular emergence of Ajax techniques and Web 2.0 concepts. The extensible component architecture in JSF has proven to be well-suited to incorporation of Ajax techniques at the component level, but the problem with component-level Ajax techniques is that they exist within little silos of interactivity that circumvent the JSF lifecycle. What is needed is a more holistic approach to incorporating Ajax interactions within the JSF lifecycle."

Maryka advises that improvements need to be made in Java EE's User Interaction Model, and in the Incremental Presentation Update. "The current user interaction model in JSF is form based, which is too crude to deliver rich Web 2.0 features," he argues.

Topic: Enterprise 2.0

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • SOA instead of J2EE

    While I agree that JSF is a previous generation architecture that doesn't support AJAX well, I don't know that we need J2EE in particular to be embrace AJAX. Modern AJAX frameworks can bind directly to WSDL web services without need of JSF or other J2EE facilities, and are hence backend agnostic.

    When you see examples that bind an AJAX grid directly to eg, Google (we have some at, it's hard to see what role J2EE has to play beyond serving as a basic web server and hosting web services.
  • SOA, and SOA...

    You know from where those statments are copied from...). I still find it good to read again (scratching my head while doing that...):

    Java Platform, Enterprise Edition (Java EE) 5 is the latest version of the premier platform for developing robust, scalable enterprise applications. Here are some highlights:

    * Easier development. The focus in Java EE 5 is ease of development. With Java EE 5, there is less code to write -- much of the boilerplate code has been removed, defaults are used whenever possible, and annotations are used extensively to reduce the need for deployment descriptors.

    * EJB -- simpler, better. EJB 3.0 makes programming with Enterprise JavaBeans technology simpler through the use of Plain Old Java Objects (POJOs), it also introduces a new persistence API.

    * Enhanced web services. Java EE 5 includes simplified web services support and the latest web services APIs, making it an ideal implementation platform for Service-Oriented Architectures (SOA).

    * JSF, JSTL, AJAX, and more. Constructing web applications is made easier with JavaServer Faces (JSF) technology and the JSP Standard Tag Library (JSTL). Java EE 5 supports rich thin-client technologies such as AJAX, technologies that are crucial for building applications for Web 2.0.

    The thruth is (eventually) out there...

    While most may be true, how of us are ready to disagree in practice, against those?