Title: Java 2 Platform Enterprise EditionJ2EE
 1Java 2 Platform Enterprise Edition(J2EE) A Model 
for Enterprise Application Development Report 
from the Java Days ConferenceAthens,Greece 
17/01/2002 Nikolaos Th. Korfiatis(nkorf_at_acm.org
)Research AssistantInformation Systems 
Technologies LaboratoryDepartment of Management 
Science and TechnologyAthens University of 
Economics and Business Athens, Greece 
 2The Platform for Enterprise Solutions
-  According to SUN the J2EE platform  
- Represents a single standard for implementing and 
 deploying enterprise applications.
- Has been designed through an open process. 
- Is engaging a range of enterprise computing 
 vendors, to ensure that it meets the widest
 possible range of enterprise application
 requirements.
- Addresses the core issues that impede 
 organizations efforts to maintain a competitive
 place in the information economy.
3J2EE Architecture Overview
-  The J2EE architecture is designed to provide 
 server-side and client-side support for
- Developing enterprise, multitier applications. 
- Providing client services and business logic for 
 an application, and backend enterprise
 information systems
- Providing data and knowledge management. 
4J2EE Platform Benefits
- With a set of features designed specifically to 
 expedite the
- process of distributed application development, 
 the J2EE
- platform offers several benefits such as 
-  Simplified architecture and development 
-  Scalability to meet demand variations 
-  Integration with existing information systems 
-  Choices of servers, tools, components 
-  Flexible security model
5Simplified Architecture and Development
- The J2EE platform supports a simplified, 
 component-based development model.
- Because its based on the Java programming 
 language and the Java 2 Platform, Standard
 Edition (J2SE TM platform), this model offers
 Write Once, Run Anywhere portability, supported
 by any server product that conforms to the J2EE
 standard.
-  The component-based J2EE development model can 
 enhance application development productivity in a
 number of ways
6Simplified Architecture and Development
-  Maps easily to application functionality 
- Component-based application models map easily and 
 flexibly to the functionality desired from an
 application.
- Component-based design also simplifies 
 application
-  maintenance, since components can be 
 updated and
-  replaced independently new functionality 
 can be  shimmed into existing
 applications simply by  updating selected
 components.
7Simplified Architecture and Development (2)
-  Enables assembly- and deploy-time behaviors 
- Components can expect the availability of 
 standard services in the runtime environment, and
 can be dynamically connected to other components
 providing well-defined interfaces.
- As a result, many application behaviors can be 
 configured at the time of application assembly or
 deployment, without any recoding required.
8Simplified Architecture and Development (3)
- Supports division of labor 
- Components help divide the labor of application 
 development among specific skill sets, enabling
 each member of a development team to focus on his
 or her ability.
- Thus, JSP templates can be created by graphic 
 designers, their behavior by Java programming
 language coders, business logic by domain
 experts, and application assembly and deployment
 by the appropriate team members.
- This division of labor also helps expedite 
 application maintenance.
9Integrating Existing Enterprise Information 
Systems
-  The J2EE platform, together with the J2SE 
 platform, includes a number of industry standard
 APIs for access to existing enterprise
 information systems. Basic access to these
 systems is provided by the following APIs
- JDBC TM is the API for accessing relational data 
 from Java.
- The Java Naming and Directory Interface TM (JNDI) 
 is the API for accessing information in
 enterprise name and directory services.
- The Java Message Service (JMS) is the API for 
 sending and receiving messages via enterprise
 messaging systems like IBM MQ Series and TIBCO
 Rendezvous.
- JavaMail TM is the API for sending and receiving 
 email.
- Java IDL is the API for calling CORBA services. 
10Support for Business Logic Components
- In the J2EE platform, middle-tier business logic 
 is implemented in the middle tier as Enterprise
 JavaBeans components (also referred to as
 enterprise beans). Enterprise beans allow the
 component or application developer to concentrate
 on the business logic while the complexities of
 delivering a reliable, scalable service are
 handled by the EJB server.
-  
- The J2EE platform and EJB architecture have 
 complementary goals. The EJB component model is
 the backbone of the J2EE programming model. The
 J2EE plat-form complements the EJB specification
 by
- Fully specifying the APIs that an enterprise bean 
 developer can use to implement enterprise beans.
- Defining the larger, distributed programming 
 environment in which enterprise beans are used as
 business logic components.
11Scalability
- J2EE containers provide a mechanism that supports 
 simplified scaling of distributed applications,
 without requiring any effort on the part of the
 application development team. Because J2EE
 containers provide components with transaction
 support, database connections, life cycle
 management, and other features that influence
 performance, they can be designed to provide
 scalability in these areas. This can achieved, by
 
- Providing database connection pooling so 
 containers can ensure that clients will have
 access to data quickly.
- By allowing server providers freedom to configure 
 containers to run on multiple systems. Web
 containers can be implemented to perform
 automatic load balancing as the demand for a
 particular application fluctuates.
12Choice of Servers, Tools, and Components 
-  The J2EE standard and J2EE brand are central to 
 creating a marketplace for servers, tools, and
 components. The J2EE brand on a server product
 ensures the kind of ubiquity thats fundamental
 to the goals of the J2EE platform. In addition,
 J2EE
-  standards ensure a lively marketplace for tools 
 and components.
- A range of server choicesApplication 
 development organizations can expect J2EE branded
 platforms from a variety of vendors, providing a
 range of choices in hardware platforms, operating
 systems, and server configurations. This ensures
 that businesses get a choice of servers
 appropriate to the strategic purpose of the
 applications they need.
- Designed for tool support 
-  Both EJB and JSP components are designed to be 
 manipulated by graphical development tools, and
 to allow automating many of the application
 development tasks traditionally requiring the
 ability to write and debug code.
-  
13Choice of Servers, Tools, and Components 
-  Both J2EE server providers and third-party 
 tool developers can develop tools that conform to
 J2EE standards and support various application
 development tasks and styles. Application
 developers get a choice of tools to manipulate
 and assemble components, and individual team
 members may choose tools that suit their specific
 requirements best.
- A marketplace for componentsComponent-based 
 design ensures that many types of behavior can be
 standardized, packaged, and reused by any J2EE
 application. Component vendors will provide a
 variety of off-the-shelf component solutions,
 including accounting beans, user interface
 templates, and even vertical market functionality
 of interest in specific industries. Application
 architects get a choice of standardized
 components to handle common or specialized tasks.
14Simplified, Unified Security Model
- The J2EE security model is designed to support 
 single sign-on access to application services.
 Component developers can specify the security
 requirements of a component at the method level,
 to ensure that only users with appropriate
 permissions can access specific data operations.
-  
- While the EJB and Java Servlet APIs both provide 
 mechanisms for building security checks into
 code, the basic mechanism for matching users with
 roles (groups of users having specific
 permissions) is performed entirely at application
 deployment time. This provides both greater
 flexibility and better security control.
15 Summary
- The challenge to IT professionals today is to 
 efficiently develop and deploy distributed
 applications for use on both corporate intranets
 and over the Internet. Companies that can do this
 effectively will gain strategic advantage in the
 information economy.
- The Java 2 Platform, Enterprise Edition is a 
 standard set of Java technologies that streamline
 the development, deployment, and management of
 enterprise applications. The J2EE platform is
 functionally complete in the sense that it is
 possible to develop a large class of enterprise
 applications using all the range of technologies
 that the java language can provide.
16References  Resources
- http//www.sun.com/developers/evangcentralSUN 
 Microsystems Technology Evangelists Main Page.
- http//Java.sun.comThe Java Language Reference. 
- http//www.maxgoff.com 
-  Max Goff is a Technology Evangelist for Sun 
 Microsystems, specializing in various Java
 technology-related topics.
17Java 2 Platform Enterprise Edition(J2EE) A Model 
for Enterprise Application Development Report 
from the Java Days ConferenceAthens,Greece 
17/01/2002 Nikolaos Th. Korfiatis(nkorf_at_msn.co
m)Undergraduate StudentDepartment of 
Management Science and TechnologyAthens 
University of Economics and Business