Java EE 7: Front-end Web Application Development

Course code: JE7FE1

Duration:       40 Hours

Java EE 7: Front-end Web Application Development training helps you explore building and deploying enterprise applications that comply with the Java Platform, Enterprise Edition 7 Web Profile. By taking this course, you'll gain hands-on experience building Java EE web applications. You will get the chance to create web-based user interfaces using HTML5 and JavaScript along with JSPs and servlets. Web-based user interfaces will use AJAX to communicate with RESTful web services you create; data will persist using JPA and optimistic locking. Java is one of the most widely used languages right from building simple desktop applications to enterprise scale processing, web applications and mobile computing.

Audience

Java EE developers

Java Developers

J2EE Developers

Web Administrators

Prerequisites

Required Prerequisites:

- Experience with Java SE, or Java Programmer Certification
- Understand object-oriented principles
- Basic understanding of database concepts and SQL syntax
- Able to author HTML, CSS, and JavaScript enabled web pages
- Java SE 8 Programming

Suggested Prerequisites:

- Experience with an Integrated Development Environment
- JavaScript and HTML5: Develop Web Applications

Objective

- Create and use Java annotations
- Select the correct Java EE Profile for a given application
- Develop and run an EJB technology application
- Create Java EE technology applications with the Java EE 7 Platform
- Identify the services provided by an Application Server
- Package, deploy and debug enterprise applications
- Create web-based user interfaces using Servlet, JSP, JAX-RS, and JavaScript technologies
- Access relational databases using the Java Persistence API
- Create scalable, transacted business logic with EJB-Lite
- Develop basic Java Persistence API entity classes to enable database access
- Develop a web-based user interface using Servlets, JSPs, and JAX-RS
- Design applications to use dependency injection
- Use IDEs and Application Servers for Java EE development

Education Criteria

None

Topic 1: Java Platform, Enterprise Edition

- The Java EE Platform
- The needs of enterprise application developers
- Java EE specifications
- A comparison of services and libraries
- The Java EE Web Profile
- Java EE application tiers and layers

Topic 2: Enterprise Development Tools and Applications

- The purpose of an application server
- Starting and stopping WebLogic Server
- Properties of Java EE components
- The development process of a Java EE application
- Configuring and packaging Java EE applications

Topic 3: JavaBeans, Annotations, and Logging

- Java SE features used in Java EE applications
- Creating POJO JavaBeans components
- Using Logging
- Using Common Java Annotations
- Develop custom annotations
- The role of annotations in Java EE applications

Topic 4: Java EE Web Architecture

- The HTTP request-response model
- Differences between Java Servlets, JSP, and JSF components
- Application layering and the MVC pattern
- Avoiding thread safety issues in web components
- Use the Expression Language

Topic 5: Developing Servlets

- The Servlet API
- Request and response APIs
- Set response headers
- Two approaches to creating a response body
- Uploading files using a servlet
- Forwarding control and passing data
- Using the session management API

Topic 6: Developing with JavaServer Pages

- The role of JSP as a presentation mechanism
- Authoring JSP view pages
- Processing data from servlets in a JSP page
- Using tag libraries

Topic 7: JAX-RS Web Services

- The need for web services
- Designing a RESTful web service
- Create methods that follow the prescribed rules of HTTP method behavior
- Create JAX-RS resource and application classes
- Consume query and other parameter types
- Produce and consume complex data in the form of XML
- HTTP status codes

Topic 8: Java RESTful Clients

- Pre-JAX-RS 2 Clients: HttpUrlConnection and the Jersey Client API
- The JAX-RS 2 Client API

Topic 9: HTML5 Applications with JavaScript and AJAX

- HTML DOM manipulation with JavaScript
- RESTful clients with JavaScript (AJAX)
- Limitations of JavaScript clients
- The Same-Origin policy and CORS

Topic 10: WebSocket and the Java API for JSO Processing

- Web Service Limitations
- WebSocket Explained
- Creating WebSockets with Java
- Client-side WebSokect with JavaScript
- Client-side WebSocket with Java
- Consuming JSON with Java
- Producing JSON with Java

Topic 11: Implementing a Security Policy

- Container-managed security
- User roles and responsibilities
- Create a role-based security policy
- The security API

Topic 12: POJO and EJB-Lite Component Models

- The role of EJB components in Java EE applications
- The benefits of EJB components
- Operational characteristics of stateless and stateful session beans
- Creating session beans
- Creating session bean clients

Topic 13: The Java Persistence API

- The role of the Java Persistence API in Java EE applications
- Basics of Object-relational mapping
- The elements and environment of an entity component
- The life cycle and operational characteristics of entity components

Topic 14: Implementing a transaction policy

- Transaction semantics
- Programmatic vs. declarative transaction scoping
- Using JTA to scope transactions programmatically
- Implementing a container-managed transaction policy
- Optimistic locking with the versioning of entity components
- Pessimistic locking using EntityManager APIs
- The effect of exceptions on transaction state

Course Review

Exam Preparation (optional)