0% found this document useful (0 votes)
106 views22 pages

J2ee 1

This document provides an overview of J2EE and its architecture. It discusses key concepts like servlets, JSPs, JavaBeans, and the web application descriptor file (web.xml). It explains how servlets and JSPs are mapped to URLs and how errors are handled. It also summarizes the MVC architecture pattern and how JavaBeans are used to separate the model from the view.

Uploaded by

satyanarayana
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT or read online on Scribd
0% found this document useful (0 votes)
106 views22 pages

J2ee 1

This document provides an overview of J2EE and its architecture. It discusses key concepts like servlets, JSPs, JavaBeans, and the web application descriptor file (web.xml). It explains how servlets and JSPs are mapped to URLs and how errors are handled. It also summarizes the MVC architecture pattern and how JavaBeans are used to separate the model from the view.

Uploaded by

satyanarayana
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT or read online on Scribd
You are on page 1/ 22

J2EE Overview

Web Programming
CSCI 4300
J2EE multi-tier architecture

• Servlet: Java class loaded into Web server


• JSP page: enhanced HTML page that is compiled into a
servlet for deployment
• JavaBean: data holding class (part of Model in MVC)
J2EE Architecture

• Applets and special clients: downloaded,


connect back to server
• Enterprise Java Beans: long-term, application-
scope data storage and business logic
Web Application Layout
Mirroring packages with directories
Web Application Descriptor,
web.xml
• Defines servlets and maps them to URL
paths
• Declares the welcome file for the app
• Specifies pages or servlets to handle
various errors
• Provides initialization parameters to
servlets
• Provides links to external resources such
as database connections
Web.xml prolog
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun
Microsystems, Inc.//DTD Web Application
2.3//EN"
http://java.sun.com/dtd/web- app_2_3.dtd>
• You can validate your web.xml using the W3C
validator service (recommended1)
• When you change your web.xml, you must ask
Chris or me to reload your web-app
Web.xml root element
<web-app>
… web application contents.
</web-app>
• Can contain:
– Servlet definitions
– Servlet paths
– Parameters
– Etc, etc.
Servlet element
<servlet>
<servlet-name>GonzoServlet</servlet-name>
<servlet-class>cs4300.Gonzo</servlet-class>
</servlet>
Or
<servlet>
<servlet-name>GonzoServlet</servlet-name>
<jsp-page>gonzo.jsp</jsp-page>
</servlet>
Servlet-mapping element
<servlet-mapping>
<servlet-name>GonzoServlet</servlet-name>
<url-pattern>/gonzo</url-pattern>
</servlet-mapping>
If the web application root is
http://ganesha.cs.uga.edu/myapp,
GonzoServlet is accessed at
http://ganesha.cs.uga.edu/myapp/gonzo
Welcome page
<welcome-file-list>
<welcome-file>
index.jsp
</welcome-file>
</welcome-file-list>
• Index.jsp is the file served at the URL
http://ganesha.cs.uga.edu/myapp
Error page elements
<error-page>
<error-code>404</error-code>
<location>notFound.jsp</location>
</error-page>
<error-page>
<exception-type>
org.xml.sax.SaxParseException
</exception-type>
<location>parseError.jsp</location>
</error-page>
Basic JSP page
<%@ page contentType="text/html; charset=UTF-8" %>
<html>
<head>
<Static HTML code…>
• Declarations
• Java expressions
• Scriptlets (chunks of Java code)
Try to minimize the mixing of HTML with
Java (violates Model 2 architecture)
Declaration, scriptlet, and
expression
<%! int i; String[] userName %>
<table border=1>
<% for (i=0;i<userName.length;i++) { %>
<tr><td><%=i+1 %> </td>
<td> <%=userName[i] %> </td></tr>
<% } %>
</table>
Equivalent HTML from previous
<table border=1>
<tr><td>1</td><td>Michael Adams</td></tr>
<tr><td>2</td><td>Dan Everett</td></tr>
<tr><td>1</td><td>Hunter Thompson</td></tr>
</table>

• But note that we try to avoid such mixing of


Java and HTML!
Model 2 Architecture (MVC)
Helper Object Scopes
JavaBean
• Helper class that holds information
• Separates Java code from HTML
• Implements Model component of MVC
architecture
• Useful for holding session data
JSP Address Book Interface
JavaBean Example

• Store functionality: user enters name -email pair


for storage in bean
• Fetch functionality: user enters name, bean
replies with email
JSP-Bean communication
• Make <INPUT> element names in JSP
correspond to variable names in Bean
• Write Bean class with setX() and getX()
setter and getter methods
• <jsp:setProperty> sends inputs to Bean
• <jsp:getProperty> gets values from Bean
Acknowledgements
• J2EE architecture diagrams: Sun J2EE tutorial,
http://java.sun.com/j2ee/1.4/docs/tutorial/doc/index.html
• Object scopes: jGuru Java Server Pages fundamentals,
http://java.sun.com/developer/onlineTraining/JSPIntro/contents.html#JSPIntro6_3

You might also like