|
|
|
Exam Objectives |
|
| |
|
| Section 1: The
Servlet Model |
|
| |
- 1.1 For each of the HTTP methods, GET, POST, and
PUT, identify the corresponding method in the HttpServlet class.
- 1.2 For each of the HTTP methods, GET, POST, and
HEAD, identify triggers that might cause a browser to use the
method, and identify benefits or functionality of the method.
- 1.3 For each of the following operations, identify
the interface and method name that should be used:
- * Retrieve HTML form parameters from the request
- * Retrieve a servlet initialization parameter
- * Retrieve HTTP request header information
- * Set an HTTP response header; set the content
type of the response
- * Acquire a text stream for the response
- * Acquire a binary stream for the response
- * Redirect an HTTP request to another URL
- 1.4 Identify the interface and method to access
values and resources and to set object attributes within the
following three Web scopes:
- * Request
- * Session
- * Context
- 1.5 Given a life-cycle method: init, service, or
destroy, identify correct statements about its purpose or about how
and when it is invoked.
- 1.6 Use a RequestDispatcher to include or forward
to a Web resource.
|
| |
| Section 2: The
Structure and Deployment of Modern Servlet Web Applications |
|
| |
- 2.1 Identify the structure of a Web Application
and Web Archive file, the name of the WebApp deployment descriptor,
and the name of the directories where you place the following:
- * The WebApp deployment descriptor
- * The WebApp class files
- * Any auxiliary JAR files
- 2.2 Match the name with a description of purpose
or functionality, for each of the following deployment descriptor
elements:
- * Servlet instance
- * Servlet name
- * Servlet class
- * Initialization parameters
- * URL to named servlet mapping
|
| |
| Section 3: The
Servlet Container Model |
|
| |
- 3.1 Identify the uses for and the interfaces (or
classes) and methods to achieve the following features:
- * Servlet context init. parameters
- * Servlet context listener
- * Servlet context attribute listener
- * Session attribute listeners
- 3.2 Identify the WebApp deployment descriptor
element name that declares the following features:
- * Servlet context init. parameters
- * Servlet context listener
- * Servlet context attribute listener
- * Session attribute listeners
- 3.3 Distinguish the behavior of the following in a
distributable:
- * Servlet context init. parameters
- * Servlet context listener
- * Servlet context attribute listener
- * Session attribute listeners
|
| |
| Section 4:
Designing and Developing Servlets to Handle Server-side Exceptions |
|
| |
- 4.1 For each of the following cases, identify
correctly constructed code for handling business logic exceptions,
and match that code with correct statements about the code's
behavior: Return an HTTP error using the sendError response method;
Return an HTTP error using the setStatus method.
- 4.2 Given a set of business logic exceptions,
identify the following: The configuration that the deployment
descriptor uses to handle each exception; How to use a
RequestDispatcher to forward the request to an error page; Specify
the handling declaratively in the deployment descriptor.
- 4.3 Identify the method used for the following:
Write a message to the WebApp log; Write a message and an exception
to the WebApp log.
|
| |
| Section 5:
Designing and Developing Servlets Using Session Management |
|
| |
- 5.1 Identify the interface and method for each of
the following:
- * Retrieve a session object across multiple
requests to the same or different servlets within the same WebApp
- * Store objects into a session object
- * Retrieve objects from a session object
- * Respond to the event when a particular object is
added to a session
- * Respond to the event when a session is created
and destroyed
- * Expunge a session object
- 5.2 Given a scenario, state whether a session
object will be invalidated.
- 5.3 Given that URL-rewriting must be used for
session management, identify the design requirement on
session-related HTML pages.
|
| |
| Section 6:
Designing and Developing Secure Web Applications |
|
| |
- 6.1 Identify correct descriptions or statements
about the security issues:
- * Authentication, authorization
- * Data integrity
- * Auditing
- * Malicious code
- * Web site attacks
- 6.2 Identify the deployment descriptor element
names, and their structure, that declare the following:
- * A security constraint
- * A Web resource
- * The login configuration
- * A security role
- 6.3 Given an authentication type: BASIC, DIGEST,
FORM, and CLIENT-CERT, identify the correct definition of its
mechanism.
|
| |
| Section 7:
Designing and Developing Thread-safe Servlets |
|
| |
- 7.1 Identify which attribute scopes are
thread-safe:
- * Local variables
- * Instance variables
- * Class variables
- * Request attributes
- * Session attributes
- * Context attributes
- 7.2 Identify correct statements about differences
between the multi-threaded and single-threaded servlet models.
- 7.3 Identify the interface used to declare that a
servlet must use the single thread model.
|
| |
| Section 8: The
JavaServer Pages Technology Model |
|
| |
- 8.1 Write the opening and closing tags for the
following JSP tag types:
- * Directive
- * Declaration
- * Scriptlet
- * Expression
- 8.2 Given a type of JSP tag, identify correct
statements about its purpose or use.
- 8.3 Given a JSP tag type, identify the equivalent
XML-based tags.
- 8.4 Identify the page directive attribute, and its
values, that:
- * Import a Java class into the JSP page
- * Declare that a JSP page exists within a session
- * Declare that a JSP page uses an error page
- * Declare that a JSP page is an error page
- 8.5 Identify and put in sequence the following
elements of the JSP page lifecycle:
- * Page translation
- * JSP page compilation
- * Load class
- * Create instance
- * Call jspInit
- * Call _jspService
- * Call jspDestroy
- 8.6 Match correct descriptions about purpose,
function, or use with any of the following implicit objects:
- * request
- * response
- * out
- * session
- * config
- * application
- * page
- * pageContext
- * exception
- 8.7 Distinguish correct and incorrect scriptlet
code for:
- * A conditional statement;
- * An iteration statement
|
| |
| Section 9:
Designing and Developing Reusable Web Components |
|
| |
| 9.1 Given a description of required functionality,
identify the JSP page directive or standard tag in the correct
format with the correct attributes required to specify the inclusion
of a Web component into the JSP page. |
| |
| Section 10:
Designing and Developing JSP Pages Using JavaBeans Components |
|
| |
- 10.1 For any of the following tag functions, match
the correctly constructed tag, with attributes and values as
appropriate, with the corresponding description of the tag's
functionality:
- * Declare the use of a JavaBeans component within
the page.
- * Specify, for jsp: useBean or jsp: getProperty
tags, the name of an attribute.
- * Specify, for a jsp: useBean tag, the class of
the attribute.
- * Specify, for a jsp: useBean tag, the scope of
the attribute.
- * Access or mutate a property from a declared
JavaBean.
- * Specify, for a jsp: getProperty tag, the
property of the attribute.
- * Specify, for a jsp: setProperty tag, the
property of the attribute to mutate, and the new value.
- 10.2 Given JSP page attribute scopes: request,
session, application, identify the equivalent servlet code.
- 10.3 Identify techniques that access a declared
JavaBean component.
|
| |
| Section 11:
Designing and developing JSP Pages Using Custom Tags |
|
| |
- 11.1 Identify properly formatted tag library
declarations in the Web application deployment descriptor.
- 11.2 Identify properly formatted taglib directives
in a JSP page.
- 11.3 Given a custom tag library, identify properly
formatted custom tag usage in a JSP page. Uses include:
- * An empty custom tag
- * A custom tag with attributes
- * A custom tag that surrounds other JSP code
- * Nested custom tags
|
| |
| Section 12:
Designing and Developing a Custom Tag Library |
|
| |
- 12.1 Identify the tag library descriptor element
names that declare the following:
- * The name of the tag
- * The class of the tag handler
- * The type of content that the tag accepts
- * Any attributes of the tag
- 12.2 Identify the tag library descriptor element
names that declare the following:
- * The name of a tag attribute
- * Whether a tag attribute is required
- * Whether or not the attribute's value can be
dynamically specified
- 12.3 Given a custom tag, identify the necessary
value for the bodycontent TLD element for any of the following tag
types:
- * Empty-tag
- * Custom tag that surrounds other JSP code
- * Custom tag that surrounds content that is used
only by the tag handler
- 12.4 Given a tag event method (doStartTag,
doAfterBody, and doEndTag), identify the correct description of the
methods trigger.
- 12.5 Identify valid return values for the
following methods:
- * doStartTag
- * doAfterBody
- * doEndTag
- * PageConext.getOut
- 12.6 Given a "BODY" or "PAGE" constant, identify a
correct description of the constant's use in the following methods:
- * doStartTag
- * doAfterBody
- * doEndTag
- 12.7 Identify the method in the custom tag handler
that accesses:
- * A given JSP page's implicit variable
- * The JSP page's attributes
- 12.8 Identify methods that return an outer tag
handler from within an inner tag handler.
|
| |
| Section 13 |
|
| |
- 13.1 Given a scenario description with a list of
issues, select the design pattern (Value Objects, MVC, Data Access
Object, or Business Delegate) that would best solve those issues.
- 13.2 Match design patterns with statements
describing potential benefits that accrue from the use of the
pattern, for any of the following patterns:
- * Value Objects
- * MVC
- * Data Access Object
- * Business Delegate
|