Server User Manual

Table Of Contents
16 Developing Applications for J2EE Servers
Stand-alone clients
Consumers of dynamic web content
One type of stand-alone client is a Java application or another programming language
that consumes dynamic web content. This web content is usually XML data messages:
The web container performs the XML transformations and provides web connectivity to
clients. The client handles the presentation logic while the web tier manages the
business logic and accesses the data on the EIS tier if necessary. Business logic might
be implemented as enterprise beans. The J2EE technologies likely to be used are
XML, servlets, web services, and possibly enterprise beans and JDBC to access
enterprise data.
Java client calling EJBs
Enterprise JavaBeans (EJBs) are server-side components that run in a middle-tier EJB
container. The container provides services to the beans, such as transaction
management and security. You, as the developer, dont have to implement such low-
level and complex services, but instead can concentrate on developing the business
logic for the beans, knowing that the services are there when they are needed.
Developers often choose EJBs when building applications that will be distributed over
several servers. They also like to use EJBs because of the transparent way they
handle transactions.
The following diagram depicts a Java client that calls upon the business methods
encapsulated with the enterprise beans that are running in an EJB container. If the
beans are entity beans, they access company data on the EIS tier through JDBC and
J2EE connectors. Ideally, the client should access company data through a session
bean which interacts with the entity beans that model company data. A session bean
that interacts with an entity bean in this way is usually using the Session Facade
design pattern; see Creating session facades for entity beans in Developing
Applications with Enterprise JavaBeans for more information. XML is used in the
deployment descriptors for enterprise beans.
If the application you need requires secure transactions over a distributed system,
consider using enterprise beans.