Dave Jarvis' Repositories

git clone https://repo.autonoma.ca/repo/indispensable.git
#LyX 1.6.7 created this file. For more info see http://www.lyx.org/
\lyxformat 345
\begin_document
\begin_header
\textclass scrbook
\begin_preamble
\input{preamble.tex}
\end_preamble
\options pointlessnumbers,obeyspaces,plainpages=false,pdfpagelabels 
\use_default_options false
\language english
\inputencoding utf8
\font_roman lmodern
\font_sans helvet
\font_typewriter courier
\font_default_family default
\font_sc false
\font_osf false
\font_sf_scale 100
\font_tt_scale 100

\graphics default
\float_placement H
\paperfontsize default
\spacing single
\use_hyperref true
\pdf_bookmarks true
\pdf_bookmarksnumbered false
\pdf_bookmarksopen false
\pdf_bookmarksopenlevel 1
\pdf_breaklinks false
\pdf_pdfborder false
\pdf_colorlinks false
\pdf_backref false
\pdf_pdfusetitle true
\papersize letterpaper
\use_geometry false
\use_amsmath 2
\use_esint 1
\cite_engine basic
\use_bibtopic false
\paperorientation portrait
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
\papercolumns 1
\papersides 1
\paperpagestyle default
\bullet 0 5 11 -1
\bullet 1 5 24 -1
\bullet 2 0 0 -1
\tracking_changes false
\output_changes false
\author "" 
\author "" 
\end_header

\begin_body

\begin_layout Standard
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
begingroup
\backslash
hypersetup{linkcolor=toccolour}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset CommandInset toc
LatexCommand tableofcontents

\end_inset


\end_layout

\begin_layout Standard
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
endgroup
\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
input{chapter.tex}
\end_layout

\end_inset


\end_layout

\begin_layout Chapter
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 for 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

 -- Windows
\end_layout

\begin_layout Standard
Describes how to set up a 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 environment for 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

 using 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsf{}
\end_layout

\end_inset

 1.2.
\end_layout

\begin_layout Section
Software Requirements
\end_layout

\begin_layout Standard
\begin_inset CommandInset ref
LatexCommand ref
reference "tab:Software-Downloads"

\end_inset

 lists the software required to develop a RichFaces application using 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

.
\end_layout

\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "tab:Software-Downloads"

\end_inset

Software Downloads
\end_layout

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="9" columns="3">
<features>
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<column alignment="left" valignment="top" width="0">
<row>
<cell alignment="left" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
rowcolor{tableheader}
\backslash
toprule{}
\end_layout

\end_inset


\series bold
Software
\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\series bold
Version
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout

\series bold
Notes
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset CommandInset href
LatexCommand href
name "Apache Ant"
target "http://ant.apache.org/"

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1.8.2
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Binary zip file
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset CommandInset href
LatexCommand href
name "Apache Tomcat"
target "http://tomcat.apache.org/"

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
6.0.32
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Binary zip file
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset CommandInset href
LatexCommand href
name "Eclipse"
target "http://www.eclipse.org/downloads/"

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
3.6.1
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
IDE for Java EE Developers
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset CommandInset href
LatexCommand href
name "Java"
target "http://www.oracle.com/technetwork/java/javase/downloads/"

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1.6.0_24
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
JDK 6u24
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset CommandInset href
LatexCommand href
name "JavaServer Faces"
target "http://javaserverfaces.java.net/"

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1.2_15
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Binary zip file (mojarra)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset CommandInset href
LatexCommand href
name "Facelets"
target "http://repository.jboss.org/maven2/com/sun/facelets/jsf-facelets/1.1.14/"

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
1.1.14
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Binary jar file (not sources)
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="left" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset CommandInset href
LatexCommand href
name "JBoss Tools"
target "http://download.jboss.org/jbosstools/updates/JBossTools-3.1.1.GA/"

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="left" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
3.2.0 GA
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

 plug-in
\end_layout

\end_inset
</cell>
</row>
<row>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
\begin_inset CommandInset href
LatexCommand href
name "RichFaces"
target "http://www.jboss.org/richfaces"

\end_inset


\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
3.3.3.Final
\end_layout

\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text

\begin_layout Plain Layout
Stable release
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
tabularnewline
\backslash
bottomrule%
\end_layout

\end_inset


\end_layout

\end_inset
</cell>
</row>
</lyxtabular>

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Section
Prerequisites
\end_layout

\begin_layout Standard
The following software packages must be installed and functional:
\end_layout

\begin_layout Itemize
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjava{}
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appireport{}
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset


\end_layout

\begin_layout Itemize
Database software
\begin_inset Foot
status collapsed

\begin_layout Plain Layout
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apppostgres{}
\end_layout

\end_inset

, MySQL, Oracle, et cetera.
\end_layout

\end_inset


\end_layout

\begin_layout Subsection
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appireport{}
\end_layout

\end_inset

 Directory
\end_layout

\begin_layout Standard
When installing 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appireport{}
\end_layout

\end_inset

, change the default destination folder to , as shown in 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:iReport-Destination-Folder"

\end_inset

.
\end_layout

\begin_layout Standard
\begin_inset Float figure
wide false
sideways false
status collapsed

\begin_layout Plain Layout
\begin_inset Graphics
	filename captures/ireport-setup.png
	display false

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:iReport-Destination-Folder"

\end_inset

Destination Folder
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Standard
Install 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appireport{}
\end_layout

\end_inset

 in a directory that does not contain spaces, as some software misinterprets
 spaces in directory names.
 A directory name containing spaces (for example, 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
windirprogramfiles
\end_layout

\end_inset

) is the source of many software bugs.
 Double quotes can help, but that adds complexity and requires manual interventi
on, so use directory names without spaces to avoid the problem altogether.
 (Both 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appireport{}
\end_layout

\end_inset

 and 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjasperreports{}
\end_layout

\end_inset

 handle spaces in names correctly, but install them to the location shown
 in 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:iReport-Destination-Folder"

\end_inset

 anyway, to avoid having to qualify paths with double quotes.)
\end_layout

\begin_layout Section
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appapachetomcat{}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Install 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appapachetomcat{}
\end_layout

\end_inset

 into 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
windirprogapachetomcat{}
\end_layout

\end_inset

.
\end_layout

\begin_layout Section
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Complete the following steps to install 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

:
\end_layout

\begin_layout Enumerate
Extract 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

 into 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
windireclipse{}
\end_layout

\end_inset

.
\end_layout

\begin_layout Enumerate
Run 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

.
\end_layout

\begin_layout Enumerate
Set 
\series bold
Workspace
\series default
 to: 
\family typewriter

\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
windirdevworkspace{}
\end_layout

\end_inset


\end_layout

\begin_layout Enumerate
Check the directory as the default.
\end_layout

\begin_layout Enumerate
Click 
\series bold
OK
\series default
.
\end_layout

\begin_layout Standard
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

 is installed and running.
\end_layout

\begin_layout Section
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjboss{}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
In 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

, complete the following steps to install 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjboss{}
\end_layout

\end_inset

:
\end_layout

\begin_layout Enumerate
Click 
\series bold
Help » Install New Software
\series default
 to open the 
\series bold
Install
\series default
 dialog.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Add
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
Name
\series default
 to: 
\family typewriter
JBoss Tools 3.2
\end_layout

\begin_layout Enumerate
Set 
\series bold
Location
\series default
 to:
\end_layout

\begin_deeper
\begin_layout LyX-Code

\size small
http://download.jboss.org/jbosstools/updates/stable/helios/
\end_layout

\end_deeper
\begin_layout Enumerate
Click 
\series bold
OK
\series default
 to close the 
\series bold
Add Repository
\series default
 dialog.
\end_layout

\begin_layout Enumerate
Check 
\series bold
Web and Java EE Development
\series default
 (
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:RichFaces-JBoss-Install-Windows"

\end_inset

).
\end_layout

\begin_deeper
\begin_layout Standard
\begin_inset Float figure
wide false
sideways false
status collapsed

\begin_layout Plain Layout
\begin_inset Graphics
	filename captures/richfaces-jboss-05.png
	display false
	special  

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:RichFaces-JBoss-Install-Windows"

\end_inset


\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjboss{}
\end_layout

\end_inset

 Install
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\end_deeper
\begin_layout Enumerate
Click 
\series bold
Next
\series default
 to begin the installation.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Next
\series default
 to bypass the 
\series bold
Install Details
\series default
 review.
\end_layout

\begin_layout Enumerate
Click the radio button to accept the licensing terms.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Finish
\series default
 to continue the installation.
\end_layout

\begin_layout Enumerate
Click 
\series bold
OK
\series default
 to confirm any security warnings.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Restart Now
\series default
 to restart 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

.
\end_layout

\begin_layout Enumerate
Click 
\series bold
OK
\series default
 to confirm the workspace, after 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

 restarts.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Yes
\series default
 to permit (or 
\series bold
No
\series default
 to deny) anonymous 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjboss{}
\end_layout

\end_inset

 usage statistics.
\end_layout

\begin_layout Standard
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjboss{}
\end_layout

\end_inset

 is installed.
\end_layout

\begin_layout Section
Create New Project
\end_layout

\begin_layout Standard
Complete the following steps to create a new project in 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

:
\end_layout

\begin_layout Enumerate
If it is still open, close the 
\series bold
Welcome
\series default
 tab.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Window » Open Perspective » Other
\series default
.
\end_layout

\begin_layout Enumerate
Select 
\series bold
Web Development
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
OK
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
File » New JSF Project
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
Project Name
\series default
 to: 
\family typewriter

\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
dirjsfproject{}
\end_layout

\end_inset


\end_layout

\begin_layout Enumerate
Set 
\series bold
JSF Environment
\series default
 to: 
\family typewriter
JSF 1.2
\end_layout

\begin_layout Enumerate
Click 
\series bold
Next
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
Servlet Version
\series default
 to: 
\family typewriter
2.5
\end_layout

\begin_layout Enumerate
Click 
\series bold
New
\series default
, beside 
\series bold
Runtime
\series default
, to open the 
\series bold
New Server Runtime
\series default
 dialog.
\end_layout

\begin_layout Enumerate
Select 
\series bold

\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appapachetomcat{}
\end_layout

\end_inset

 v6.0
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Next
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
Name
\series default
 to: 
\family typewriter
Development Web Server
\end_layout

\begin_layout Enumerate
Click 
\series bold
Browse
\series default
.
\end_layout

\begin_layout Enumerate
Browse to 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
windirprogapachetomcat{}
\end_layout

\end_inset

.
\end_layout

\begin_layout Enumerate
Click 
\series bold
OK
\series default
 to accept the directory.
\end_layout

\begin_layout Enumerate
Set 
\series bold
JRE
\series default
 to: 
\family typewriter
jdk1.6.0_24
\end_layout

\begin_layout Enumerate
Click 
\series bold
Finish
\series default
 to close the 
\series bold
New Server Runtime
\series default
 dialog.
\end_layout

\begin_layout Enumerate
Click 
\series bold
New
\series default
, beside 
\series bold
Target Server
\series default
, to open the 
\series bold
New Server
\series default
 dialog.
\end_layout

\begin_layout Enumerate
Expand 
\series bold
Apache
\series default
.
\end_layout

\begin_layout Enumerate
Select 
\series bold
Tomcat v6.0 Server
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Finish
\series default
 to close the 
\series bold
New Server
\series default
 dialog.
\end_layout

\begin_layout Enumerate
Ensure 
\series bold
Development Web Server at localhost
\series default
 is checked.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Finish
\series default
 to accept the 
\series bold
New JSF Project
\series default
 dialog settings.
\end_layout

\begin_layout Enumerate
Expand 
\series bold

\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
dirjsfproject{}
\end_layout

\end_inset


\family typewriter
\series default
.
\end_layout

\begin_layout Standard
The Package Explorer panel resembles 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Package-Panel"

\end_inset

.
\end_layout

\begin_layout Standard
\begin_inset Float figure
wide false
sideways false
status collapsed

\begin_layout Plain Layout
\begin_inset Graphics
	filename captures/richfaces-jboss-06.png
	display false

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Package-Panel"

\end_inset

Package Explorer Panel
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Standard
A new project is created.
\end_layout

\begin_layout Section
Libraries
\end_layout

\begin_layout Standard
This section describes the libraries required to create a 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 web page.
 The libraries include:
\end_layout

\begin_layout Itemize

\series bold
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsf{}
\end_layout

\end_inset


\series default
 -- Application framework for developing web-based user interfaces.
\end_layout

\begin_layout Itemize

\series bold
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset


\series default
 -- Component library for 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsf{}
\end_layout

\end_inset

 that facilitates using Ajax.
\end_layout

\begin_layout Itemize

\series bold
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appfacelets{}
\end_layout

\end_inset


\series default
 -- Page declaration language to create 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsf{}
\end_layout

\end_inset

 views using HTML-style templates.
\end_layout

\begin_layout Standard
Note: The 
\family typewriter
<destination>
\family default
 directory throughout this section is defined as follows:
\end_layout

\begin_layout LyX-Code

\size small
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
windirdevworkspace{}
\backslash
dirjsfproject{}
\end_layout

\end_inset


\backslash
WebContent
\backslash
WEB-INF
\backslash
lib
\end_layout

\begin_layout Subsection
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsf{}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Note: 
\family typewriter
<source>
\family default
 refers to 
\family typewriter

\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
windirdev{}
\end_layout

\end_inset

jsf
\family default
.
\end_layout

\begin_layout Standard
Complete the following steps to install 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsf{}
\end_layout

\end_inset

:
\end_layout

\begin_layout Enumerate
Extract 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsf{}
\end_layout

\end_inset

 as 
\family typewriter
<source>
\family default
.
\end_layout

\begin_layout Enumerate
Copy the following library files into 
\family typewriter
<destination>
\family default
:
\end_layout

\begin_deeper
\begin_layout LyX-Code
<source>
\backslash
lib
\backslash
jsf-impl.jar
\end_layout

\begin_layout LyX-Code
<source>
\backslash
lib
\backslash
jsf-api.jar
\end_layout

\end_deeper
\begin_layout Standard
The 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsf{}
\end_layout

\end_inset

 libraries are installed.
\end_layout

\begin_layout Subsection
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Note: 
\family typewriter
<source>
\family default
 refers to 
\family typewriter

\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
windirdev{}
\end_layout

\end_inset

richfaces
\family default
.
\end_layout

\begin_layout Standard
Complete the following steps to install 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

:
\end_layout

\begin_layout Enumerate
Extract 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 as 
\family typewriter
<source>
\family default
.
\end_layout

\begin_layout Enumerate
Copy the following library files into 
\family typewriter
<destination>
\family default
:
\end_layout

\begin_deeper
\begin_layout LyX-Code
<source>
\backslash

\family typewriter
lib
\backslash

\family default
richfaces-api-3.3.3.Final.jar
\end_layout

\begin_layout LyX-Code
<source>
\backslash
lib
\backslash
richfaces-impl-3.3.3.Final.jar
\end_layout

\begin_layout LyX-Code
<source>
\family typewriter

\backslash
lib
\backslash

\family default
richfaces-ui-3.3.3.Final.jar
\end_layout

\end_deeper
\begin_layout Standard
The 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 libraries are installed.
\end_layout

\begin_layout Subsection
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appfacelets{}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
To install 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appfacelets{}
\end_layout

\end_inset

, move 
\family typewriter
jsf-facelets-1.1.14.jar
\family default
 into 
\family typewriter
<destination>
\family default
.
\end_layout

\begin_layout Section
Component Configuration
\end_layout

\begin_layout Standard
This section describes the steps to configure 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 and 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appfacelets{}
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Complete the following steps to configure 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

:
\end_layout

\begin_layout Enumerate
Switch to 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appeclipse{}
\end_layout

\end_inset

.
\end_layout

\begin_layout Enumerate
Expand 
\series bold
WebContent » WEB-INF
\series default
.
\end_layout

\begin_layout Enumerate
Double-click 
\series bold
web.xml
\series default
.
\end_layout

\begin_layout Enumerate
Configure the filter as follows:
\end_layout

\begin_deeper
\begin_layout Enumerate
Click 
\series bold
Filters
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Add
\series default
 to add a 
\series bold
Filter
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
Filter-Name
\series default
 to: 
\family typewriter
ajaxfilter
\end_layout

\begin_layout Enumerate
Set 
\series bold
Display-Name
\series default
 to: 
\family typewriter
Ajax JSF Filter
\end_layout

\begin_layout Enumerate
Set 
\series bold
Filter-Class
\series default
 to: 
\family typewriter
org.ajax4jsf.Filter
\end_layout

\begin_layout Enumerate
Click 
\series bold
Finish
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Filters
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Add
\series default
 to add a 
\series bold
Filter Mapping
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
Filter-Name
\series default
 to: 
\family typewriter
ajaxfilter
\end_layout

\begin_layout Enumerate
Set 
\series bold
Servlet-Name
\series default
 to: 
\family typewriter
Faces Servlet
\end_layout

\begin_layout Enumerate
Click 
\series bold
Browse
\series default
 to display the 
\series bold
Edit Dispatchers
\series default
 dialog.
\end_layout

\begin_layout Enumerate
Check all dispatchers (
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:Filter-Mapping-Dispatchers-Windows"

\end_inset

).
\end_layout

\begin_deeper
\begin_layout Standard
\begin_inset Float figure
wide false
sideways false
status collapsed

\begin_layout Plain Layout
\begin_inset Graphics
	filename captures/richfaces-jboss-07.png
	display false

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:Filter-Mapping-Dispatchers-Windows"

\end_inset

Filter Mapping Dispatchers
\end_layout

\end_inset


\end_layout

\begin_layout Plain Layout

\end_layout

\end_inset


\end_layout

\end_deeper
\begin_layout Enumerate
Click 
\series bold
OK
\series default
 to close the 
\series bold
Edit Dispatchers
\series default
 dialog.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Finish
\series default
 to close the 
\series bold
Add Filter Mapping
\series default
 dialog.
\end_layout

\end_deeper
\begin_layout Enumerate
Configure the listeners as follows:
\end_layout

\begin_deeper
\begin_layout Enumerate
Click 
\series bold
Listeners
\series default
.
\end_layout

\begin_layout Enumerate
Remove all Listener-Classes.
\end_layout

\end_deeper
\begin_layout Enumerate
Configure the context parameters as follows:
\end_layout

\begin_deeper
\begin_layout Enumerate
Click 
\series bold
Context Params
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Add
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
Param-Name
\series default
 to: 
\family typewriter
javax.faces.DEFAULT_SUFFIX
\end_layout

\begin_layout Enumerate
Set 
\series bold
Param-Value
\series default
 to: 
\family typewriter
.xhtml
\end_layout

\begin_layout Enumerate
Click 
\series bold
Finish
\series default
.
\end_layout

\begin_layout Enumerate
Repeat the previous five steps for the following parameters:
\end_layout

\begin_deeper
\begin_layout Standard

\series bold
Param-Name
\series default
: 
\family typewriter
facelets.REFRESH_PERIOD
\end_layout

\begin_layout Standard

\series bold
Param-Value
\series default
: 
\family typewriter
2
\begin_inset Newline newline
\end_inset


\begin_inset Newline newline
\end_inset


\family default
\series bold
Param-Name
\series default
: 
\family typewriter
facelets.DEVELOPMENT
\end_layout

\begin_layout Standard

\series bold
Param-Value
\series default
: 
\family typewriter
true
\begin_inset Newline newline
\end_inset


\begin_inset Newline newline
\end_inset


\family default
\series bold
Param-Name
\series default
: 
\family typewriter
facelets.SKIP_COMMENTS
\end_layout

\begin_layout Standard

\series bold
Param-Value
\series default
: 
\family typewriter
true
\end_layout

\end_deeper
\end_deeper
\begin_layout Enumerate
Save the file.
\end_layout

\begin_layout Standard
The 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 filter is registered.
\end_layout

\begin_layout Subsection
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appfacelets{}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Complete the following steps to register 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appfacelets{}
\end_layout

\end_inset

 with the project:
\end_layout

\begin_layout Enumerate
Double-click 
\series bold
faces-config.xml
\series default
.
\end_layout

\begin_layout Enumerate
Click the 
\series bold
Tree
\series default
 tab (along the bottom).
\end_layout

\begin_layout Enumerate
Click 
\series bold
Application
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
View-Handler
\series default
 to: 
\family typewriter
com.sun.facelets.FaceletViewHandler
\end_layout

\begin_layout Enumerate
Save the file.
\end_layout

\begin_layout Section
Create Web Pages
\end_layout

\begin_layout Standard
This section describes the steps to create a web page that uses 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

.
\end_layout

\begin_layout Subsection
Create Forwarding 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsp{}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
Complete the following steps to create a 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsp{}
\end_layout

\end_inset

 page that forwards to a 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 page:
\end_layout

\begin_layout Enumerate
Right-click 
\series bold
WebContent
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
New » File
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
File name
\series default
 to: 
\family typewriter
index.jsp
\end_layout

\begin_layout Enumerate
Click 
\series bold
Finish
\series default
.
\end_layout

\begin_layout Enumerate
Change 
\family typewriter
index.jsp
\family default
 as shown in 
\begin_inset CommandInset ref
LatexCommand ref
reference "alg:Forwarding-JSP"

\end_inset

:
\end_layout

\begin_deeper
\begin_layout Standard
\begin_inset Float algorithm
wide false
sideways false
status collapsed

\begin_layout Plain Layout
\begin_inset Graphics
	filename source/jsf/index.jsp.png
	display false

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "alg:Forwarding-JSP"

\end_inset

Forwarding 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
appjsp{}
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\end_deeper
\begin_layout Subsection
Create 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 Page
\end_layout

\begin_layout Standard
Complete the following steps to create a 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 page:
\end_layout

\begin_layout Enumerate
Right-click 
\series bold
WebContent
\series default
.
\end_layout

\begin_layout Enumerate
Click 
\series bold
New » XHTML Page
\series default
.
\end_layout

\begin_layout Enumerate
Set 
\series bold
File name
\series default
 to: 
\family typewriter
index.xhtml
\end_layout

\begin_layout Enumerate
Click 
\series bold
Finish
\series default
.
\end_layout

\begin_layout Enumerate
Change 
\family typewriter
index.xhtml
\family default
 as shown in 
\begin_inset CommandInset ref
LatexCommand ref
reference "alg:-RichFaces-Source-Code"

\end_inset

:
\end_layout

\begin_deeper
\begin_layout Standard
\begin_inset Float algorithm
wide false
sideways false
status collapsed

\begin_layout Plain Layout
\begin_inset Graphics
	filename source/xhtml/index.xhtml.png
	display false

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "alg:-RichFaces-Source-Code"

\end_inset


\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 Source Code
\end_layout

\end_inset


\end_layout

\begin_layout Plain Layout

\end_layout

\end_inset


\end_layout

\end_deeper
\begin_layout Section
Run Application
\end_layout

\begin_layout Standard
Run the application as follows:
\end_layout

\begin_layout Enumerate
Close all tabs except 
\series bold
index.jsp
\series default
.
\end_layout

\begin_layout Enumerate
Click anywhere inside 
\series bold
index.jsp
\series default
 to give the tab focus.
\end_layout

\begin_layout Enumerate
Click 
\series bold
Run » Run
\series default
.
\end_layout

\begin_layout Enumerate
If prompted, click 
\series bold
Finish
\series default
.
\end_layout

\begin_layout Enumerate
Launch a web browser.
\end_layout

\begin_layout Enumerate
Browse to: 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
url{http://localhost:8080/
\backslash
dirjsfproject/}
\end_layout

\end_inset


\end_layout

\begin_layout Standard
The 
\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 panel in 
\begin_inset CommandInset ref
LatexCommand ref
reference "fig:-RichFaces-Web-Page"

\end_inset

 is displayed.
\end_layout

\begin_layout Standard
\begin_inset Float figure
wide false
sideways false
status collapsed

\begin_layout Plain Layout
\begin_inset Graphics
	filename captures/richfaces-jboss-04.png
	display false

\end_inset


\end_layout

\begin_layout Plain Layout
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:-RichFaces-Web-Page"

\end_inset


\begin_inset ERT
status collapsed

\begin_layout Plain Layout


\backslash
apprichfaces{}
\end_layout

\end_inset

 Web Page
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\end_body
\end_document