The Java EE 5 Tutorial is a guide to developing enterprise applications for the Java Platform, Enterprise Edition 5 (Java EE 5). Here we cover all the things you need to know to make the best use of this tutorial.
Who Should Use This Tutorial
This tutorial is intended for programmers who are interested in developing and deploying Java EE 5 applications on the Sun Java System Application Server Platform Edition 9.
Prerequisites
Before proceeding with this tutorial you should have a good knowledge of the Java programming language. A good way to get to that point is to work through all the basic and some of the specialized trails in The Java Tutorial, Mary Campione et al., (Addison-Wesley, 2000). In particular, you should be familiar with relational database and security features described in the trails listed in Table 1.
How to Read This Tutorial
The Java EE 5 platform is quite large, and this tutorial reflects this. However, you don't have to digest everything in it at once. The tutorial has been divided into parts to help you navigate the content more easily.
This tutorial opens with an introductory chapter, which you should read before proceeding to any specific technology area. Chapter 1 covers the Java EE 5 platform architecture and APIs along with the Sun Java System Application Server Platform Edition 9.
When you have digested the basics, you can delve into one or more of the five main technology areas listed next. Because there are dependencies between some of the chapters, Figure 1 contains a roadmap for navigating through the tutorial.
- The web-tier technology chapters cover the components used in developing the presentation layer of a Java EE 5 or stand-alone web application:
- The web services technology chapters cover the APIs used in developing standard web services:
- The Enterprise JavaBeans (EJB) technology chapters cover the components used in developing the business logic of a Java EE 5 application:
- The Persistence technology chapters cover the Java Persistence API, which is used for accessing databases from Java EE applications:
- The platform services chapters cover the system services used by all the Java EE 5 component technologies:
Figure 1 Roadmap to This Tutorial
After you have become familiar with some of the technology areas, you are ready to tackle the case studies, which tie together several of the technologies discussed in the tutorial. The Coffee Break Application (Chapter 37) describes an application that uses the web application and web services APIs. The Duke's Bank Application (Chapter 38) describes an application that employs web application technologies, enterprise beans, and the Java Persistence API.
Finally, the appendix contains auxiliary information helpful to the Java EE 5 application developer:
- Java encoding schemes (Appendix A)
About the Examples
This section tells you everything you need to know to install, build, and run the examples.
Required Software
The following software is required to run the examples.
Tutorial Bundle
The tutorial example source is contained in the tutorial bundle. If you are viewing this online, you need to click on the "Download" link at the top of any page.
After you have installed the tutorial bundle, the example source code is in the
<
INSTALL
>/javaee5tutorial/examples/
directory, with subdirectories for each of the technologies discussed in the tutorial.Application Server
The Sun Java System Application Server Platform Edition 9 is targeted as the build and runtime environment for the tutorial examples. To build, deploy, and run the examples, you need a copy of the Application Server and Java 2 Platform, Standard Edition 5.0 (J2SE 5.0). If you already have a copy of the J2SE SDK, you can download the Application Server from:
http://java.sun.com/javaee/downloads/index.html
You can also download the Java EE 5 SDK--which contains the Application Server and the J2SE SDK--from the same site.
Application Server Installation Tips
In the Admin configuration pane of the Application Server installer,
- Select the Don't Prompt for Admin User Name radio button. This will save the user name and password so that you won't need to provide them when performing administrative operations with
asadmin
. You will still have to provide the user name and password to log in to the Admin Console.- Note the HTTP port at which the server is installed. This tutorial assumes that you are accepting the default port of 8080. If 8080 is in use during installation and the installer chooses another port or if you decide to change it yourself, you will need to update the common build properties file (described in the next section) and the configuration files for some of the tutorial examples to reflect the correct port.
In the Installation Options pane, check the Add Bin Directory to PATH checkbox so that Application Server scripts (
asadmin
,asant
,wsimport
,wsgen
,xjc
, andschemagen
) override other installations.Apache Ant
Ant is a Java technology-based build tool developed by the Apache Software Foundation (
http://ant.apache.org
), and is used to build, package, and deploy the tutorial examples. Ant is included with the Application Server. To use theant
command-line tool add<
JAVAEE_HOME
>/lib/ant/bin
to yourPATH
environment variable.Registry Server
You need a registry server to run the examples discussed in Chapter 19. Instructions for obtaining and setting up a registry server are provided in Chapter 19.
Building the Examples
The tutorial examples are distributed with a configuration file for
ant
orasant
, a portable build tool contained in the Application Server. This tool is an extension of the Ant tool developed by the Apache Software Foundation (http://ant.apache.org
). Theasant
utility contains additional tasks that invoke the Application Server administration utilityasadmin
. Directions for building the examples are provided in each chapter. Eitherant
orasant
may be used to build, package, and deploy the examples.Build properties common to all the examples are specified in the
<
INSTALL
>/javaeetutorial5/examples/bp-project/build.properties
file. This file must be created before you run the examples. We've included a sample file<
INSTALL
>/javaeetutorial5/examples/bp-project/build.properties.sample
that you should rename to<
INSTALL
>/javaeetutorial5/examples/bp-project/build.properties
and edit to reflect your environment. The tutorial examples use the Java BluePrints (http://java.sun.com/reference/blueprints/
) build system and application layout structure.To run the
ant
scripts, you must set common build properties in the file<
INSTALL
>/javaeetutorial5/examples/bp-project/build.properties
as follows:
- Set the
javaee.home
property to the location of your Application Server installation. The build process uses thejavaee.home
property to include the libraries in<
JAVAEE_HOME
>/lib/
in the classpath. All examples that run on the Application Server include the Java EE library archive--<
JAVAEE_HOME
>/lib/javaee.jar
--in the build classpath. Some examples use additional libraries in<
JAVAEE_HOME
>/lib/
; the required libraries are enumerated in the individual technology chapters.<
JAVAEE_HOME
>
refers to the directory where you have installed the Application Server.
Note: On Windows, you must escape any backslashes in the
javaee.home
property with another backslash or use forward slashes as a path separator. So, if your Application Server installation isC:\Sun\AppServer
, you must setjavaee.home
as follows:javaee.home = C:\\Sun\\AppServer
orjavaee.home=C:/Sun/AppServer
- Set the
javaee.tutorial.home
property to the location of your tutorial. This property is used forasant
deployment and undeployment.For example, on UNIX:
javaee.tutorial.home=/home/username/javaeetutorial5
On Windows:
javaee.tutorial.home=C:/javaeetutorial5
Do not install the tutorial to a location with spaces in the path.
- If you did not use the default value (
admin)
for the admin user, set theadmin.user
property to the value you specified when you installed the Application Server.- If you did not use port 8080, set the
domain.resources.port
property to the value specified when you installed the Application Server.- Set the admin user's password in
<
INSTALL
>/javaeetutorial5/examples/common/admin-password.txt
to the value you specified when you installed the Application Server. The format of this file isAS_ADMIN_PASSWORD=
password
. For example:
AS_ADMIN_PASSWORD=mypassword
Tutorial Example Directory Structure
To facilitate iterative development and keep application source separate from compiled files the tutorial examples use the Java BluePrints application directory structure.
Each application module has the following structure:
build.xml
: Ant build filesrc/java
: Java source files for the modulesrc/conf
: configuration files for the module, with the exception of web applicationsweb
: JSP and HTML pages, style sheets, tag files, and imagesweb/WEB-INF
: configuration files for web applicationsnbproject
: NetBeans project filesExamples that have multiple application modules packaged into an enterprise application archive (or EAR) have submodule directories that use the following naming conventions:
The Ant build files (
build.xml
) distributed with the examples contain targets to create abuild
subdirectory and to copy and compile files into that directory; adist
subdirectory, which holds the packaged module file; and aclient-jar
directory, which holds the retrieved application client JAR.Further Information
This tutorial includes the basic information that you need to deploy applications on and administer the Application Server.
See the Sun Java System Application Server Platform Edition 9 Developer's Guide at
http://docs.sun.com/app/docs/doc/819-3659
for information about developer features of the Application Server.See the Sun Java System Application Server Platform Edition 9 Administration Guide at
http://docs.sun.com/app/docs/doc/819-3658
for information about administering the Application Server.For information about the Java DB database included with the Application Server see the Apache web site at
http://db.apache.org/derby
.How to Print This Tutorial
To print this tutorial, follow these steps:
- Ensure that Adobe Acrobat Reader is installed on your system.
- Open the PDF version of this book.
- Click the printer icon in Adobe Acrobat Reader.
Typographical Conventions
Table 2 lists the typographical conventions used in this tutorial.
Menu selections indicated with the right-arrow character , for example, FirstSecond, should be interpreted as: select the First menu, then choose Second from the First submenu.
Feedback
To send comments, broken link reports, errors, suggestions, and questions about this tutorial to the tutorial team, please use the feedback form at
http://java.sun.com/javaee/5/docs/tutorial/information/sendusmail.html
.