Mastering JEE 7 Web Application Development
About This Course
Mastering JEE 7 Web Application Development is a five-day hands-on JEE / Java EE training course geared for experienced Java developers new to JEE, who need to get up and running with essential dynamic web development skills. Created in collaboration with several leading JEE / Java EE s authors and industry experts, this comprehensive course teaches students how to design and program web components, including all the important concepts and hands on labs that will have you building working server-side applications in no time flat. This course provides core JEE knowledge and skills that can be used as the foundation for developing production-quality web applications to a basic level.
Course Audience Profile
This is an intermediate level Java EE (JEE) developer course, designed for experienced Java developers, new to JEE, that need to further extend their skills in web development and Struts.
Attendees should have an extensive working knowledge in developing basic Java applications.
Course Pre-Requisites
Take Before: Students should have basic development skills and a working knowledge in the following topics, or attend these courses as a pre-requisite:
- TT2100 Mastering Java for OO Developers
At Course Completion
Working in a dynamic, lab-intensive hands-on coding environment students will learn to:
• Design and build web applications from both business and technical requirements
• Build web interfaces with JSF, JSPs and Servlets, using the latest technologies in JEE.
• Write maintainable web applications that separate HTML and Java
• Understand the design and development of web applications using Servlets, JSPs, web fragments, and JSF
• Work JEE’s version of dependency injection (CDI)
• Make Servlets cooperate and share data
• Store and process session information
• Deal with concurrency issues
• Access databases with JPA
• Work with annotations included in JEE
• Work with WebSockets as well as asynchronous servlets
• Use Java Bean validation in a web application
• Properly handle various types of exceptions
Course Outline
Session: Developing Java EE applications
Lesson: Enterprise Development
- Enterprise Application Software
- Requirements of Enterprise applications
- Scalability, Load Balancing, Fail Over
- Resource pooling
Lesson: Java EE Core Components
- Overview of Java EE Core Components
- Web Tier Components
- Application Tier
- Deployable Units
- Deployment Descriptors
- The Java Naming and Directory Interface (JNDI)
Session: JEE Dynamic Web Applications
Lesson: Introduction to Servlets
- The Servlet Interface
- The Web Container
- Creating HTML Output Using Servlets
- The @Webservlet Annotation
- Interaction Between web.xml and Annotations
- The @Webinitparam Annotation
Lesson: Form processing using Servlets
- Using HTML5 Forms with Servlets
- Processing Request Parameters
- HttpServletRequest Methods
- HttpServletResponse Methods
Lesson: Java Server Pages
- Java Server Pages ( JSPs)
- The Relationship Between JSPs and Servlets
- The JSP lifecycle
- The role of JSPs in Java EE 7
Lesson: Implementing MVC in JEE
- Model View Control
- Using the RequestDispatcher
- Handling Requests
- The Request Scope
- Handling Request Attributes
- The Expression Language (JSR 341)
- EL in Template text
Lesson: Session Management
- Sessions in Web Applications
- The HttpSession object
- Session Management in Java EE
- Handling Cookies
- URL-Rewriting
Session: JEE Servlet Filters and Listeners
Lesson: Servlet Filters
- Introduce Servlet Filters
- Modify the request data
- Modify the response data
- The @WebFilter annotation
- Define Filter Mappings
- Move functionality out into a decorator pattern
Session: Expression Language 3.0 (EL)
Lesson: Overview of EL
- The Expression Language (JSR 341)
- Value and Method Expressions
- Immediate and Deferred Evaluation Syntax
- Read and Read/Write expressions
Lesson: The EL language
- EL Operators
- EL Reserved Words
- EL Implicit objects
- Referencing Objects using EL
Session: Custom Tags
Lesson: Introduction to Custom Tags
- Custom tags
- Using the taglib Page Directive
- The TLD File
- The Tag Implementation Class
Lesson: The Java Standard Tag Library
- JSTL Overview
- Use JSTL to Iterate Over Collections of Data
- JSTL functions
Session: Contexts and Dependency Injection (CDI)
Lesson: Introduction to CDI
- Context Dependency Injection (CDI)
- The @Inject Annotation
- The @Default Annotation
- The @Alternative Annotation
- The @Named Annotation
Lesson: Using CDI
- Qualifiers
- @PostConstruct and @PreDestroy
- The @Produces Annotation
Lesson: CDI and Java EE
- CDI's Relationship to Java EE
- The @Model annotation
- Built-in CDI scopes
Session: Using Resources
Lesson: JEE DataSources
- DataSources in JEE
- Setup a DataSource
- Using CDI to inject a DataSource
Lesson: Overview of JPA
- Introduce the Java Persistence API (JPA)
- Benefits of Using an ORM framework
- Hibernate and JPA
Session: Java API for WebSocket
Lesson: Introduction to WebSocket
- Java API for WebSocket Overview
- Using WebSocket in Java EE
- Endpoint Instances
Lesson: Implementing WebSocket Endpoint
- Annotated Endpoints
- Receiving messages
- Send Response to Client(s)
- JavaScript to Setup a WebSocket Connection
Lesson: WebSocket in JEE
- Manage Client State
- Encoding and Decoding Messages
- Handling Errors
Session: Java Bean Validation (JSR 349)
Lesson: Introduction to Bean Validation
- Bean Validation
- Define Constraints on Object Models
- Core Validation Annotations
- Validate Objects and Object Graphs
Lesson: Bean Validation
- Validate Parameters and Return Values
- Develop Custom Constraints
Session: Managing Web Applications
Lesson: Web Fragments
- Need for Web Fragments
- The web-fragment Element
- Fragment Ordering
Lesson: Error Handling
- Handling HTTP Errors Codes
- Handling Exceptions
Lesson: Asynchronous Servlets
- Invoking a ‘Long Running’ Process
- The asyncSupported Attribute
- Using the AsyncContext Class
- Handling AsyncEvent Objects
- Nonblocking I/O in Servlets
Lesson: Web Security
- Specify the Servlet Security Model
- Roles in the Web Application
- Access Control and Authentication Requirements
- Security-Related Annotations
- Servlet 3.1 Predefined Roles
- The deny-uncovered-http-methods XML Element
Session: Introduction to Java Server Faces
Lesson: Introduction to JSF
- JSF Overview
- The JSF ‘Components’
- Configuring a JSF Application
- MVC using JSF
Lesson: JSF Components
- Understand the component architecture of JSF
- Explain the use of the RenderKit
- User Interface Component Model
- Introduce the JSF Custom Tags
- Explain the functionality of the various input tags
- Panels and tables in JSF
Session: Facelets
Lesson: Facelets
- Facelets as View Handlers
- Custom Tags Used in Facelets
- The @Named Annotation
- The @RequestScoped and @SessionScoped Annotations
- Using the dataTable Custom Tag
Lesson: Facelets Templating and Resources
- Creating a Consistent Look and Feel
- Templating and Placeholders
- JSF resource management
Sorry! It looks like we haven’t updated our dates for the class you selected yet. There’s a quick way to find out. Contact us at 502.265.3057 or email info@training4it.com
Request a Date