Agile Java EE 7 Development with WebSphere Liberty Profile 8.5
Your application requirements need to become understandable, maintainable code. With WebSphere, structure your development approach and connect technical choices with expected behaviour. Build the independence needed to design, check and evolve your applications.
- Duration
- 5 days 35 hours
- Code
- SPF02FR Code
Presentation
With its new options, particularly agile development tooling, Java EE 7 gives companies new tools for producing applications more simply and with more functionality. This course teaches you to get started with Java EE 7 and develop enterprise applications using agile support and the WebSphere Liberty Profile 8.5 application server.
Objectives
- Understand what is new in the J2EE 7 specification.
- Understand the IBM WebSphere Liberty Profile 8.5 server development platform for WebSphere development.
- Understand the fundamental concepts associated with each specification group, particularly Servlets, JavaServer Faces, REST web services, WebSocket, Enterprise JavaBeans, Contexts and Dependency Injection, and JPA.
- Code and implement these specifications.
- Understand and implement agile tooling for optimal development on this JEE 7-compatible WebSphere development server.
Program
Days 1 and 2: Introduction to the JEE 7 specification and agile development tooling
- A brief history of the Java EE platform.
- JEE 6 fundamentals: profiles, different profile types and EJB Lite.
- New features in the JEE 7 specification.
- Introduction to agile development tools for the labs:
- Docker container fundamentals.
- The Git source control tool.
- The JUnit testing framework: use and main assertions, including assertNull and assertTrue.
- The Maven 3 build tool and a review of its implementation.
- The JEE 7 WAS 8.5 and WAS Liberty Profile 8.5 server platforms.
- Development environment installation practice: configuring Eclipse and JDK 8, installing Maven and reviewing its use, integrating and configuring the WebSphere Liberty 8.5 application server, starting and stopping it, and other operations.
- Introduction to and review of web architecture fundamentals: JSP and Servlets 3.0, including deployment facilities, annotations, dynamic servlet and filter registration, and packaged resources.
- Servlets 3.0 practice and initial deployments on WebSphere Liberty Profile.
- Advanced Servlets 3.0 concepts: asynchronous processing support, advanced security aspects and other topics.
- Practice implementing advanced servlet features with a chat application and deployment on WebSphere Liberty Profile.
- CDI or Dependency Injection (JSR 299): fundamentals, basic injection, qualifiers, stateful objects and the @inject and @Qualifier annotations.
- Advanced CDI with producer methods.
- Practice implementing CDI and deploying on WebSphere Liberty Profile.
- REST web services and RESTful architecture.
Quiz to validate the skills acquired over these two days.
Day 3: Introduction to and getting started with JSF 2.2 and WebSocket
- Review of JavaServer Faces specification fundamentals.
- Templating with Facelets.
- Composite components.
- Navigation rules and Faces Flow.
- Managed Beans.
- Input/output tags.
- Value binding expressions.
- Form submission.
- Flash scope, or short-lived scope.
- Data validation.
- Ajax and JSF.
- JSF 2.2 new features and HTML 5 support.
- Introduction to the PrimeFaces JSF component library.
- Practice with PrimeFaces to implement the concepts studied, configure the framework in Maven/Eclipse and deploy projects to WebSphere Liberty Profile using agile tooling.
- Introduction to the Java API for WebSocket (JSR 356).
- WebSocket support in JEE 7: programming model, data types, endpoint configuration, encoding and decoding.
- WebSocket practice.
Quiz to conclude a full day on JSF 2.2 and WebSocket.
Day 4: EJB 3.1 and advanced transaction management
- Introduction to the Enterprise JavaBeans component model (JSR 345).
- Session Beans and Message-Driven Beans.
- Event callbacks: @PostConstruct, @PostActivate, @PreDestroy and others.
- New features in EJB 3.1 and 3.2: WAR packaging, Singleton, Timer Service, asynchronous calls, life cycle event callbacks, embedded container, optional local interfaces and annotations.
- The EJB 3.2 Lite profile as a subset of the full EJB 3 API.
- Labs applying the concepts studied.
- Java Transaction API (JTA, JSR 907).
- New features in JTA 1.2.
- Lab implementing the @Transactional annotation.
- Java Persistence API, JPA 2.1 (JSR 338): review of fundamentals and mapping.
- Persistence Unit, Persistence Context and Entity Manager.
- Introduction to JPQL.
- Advanced JPA: Criteria API and stored procedures.
- Application and implementation labs: generating JPA entities and DAO data access objects with a JSF frontend using PrimeFaces.
Quiz on fundamental EJB and JPA specification concepts.
Day 5: Implementing a JEE 7 case study and final deployment on the WebSphere Liberty Profile 8.5 application server
The final day applies and validates all the concepts studied through a case study centred on JSF 2.2 architecture with:
- PrimeFaces for the presentation layer.
- EJB 3.2 for the backend.
- JPA for persistence.
- Postgres for the database.
- Final deployment on WebSphere Liberty Profile 8.5 using the agile tooling introduced at the beginning of the course.
Audience
This course is intended for Java developers and architects.
Prerequisites
- Basic knowledge of Java.
- Basic knowledge of web development: Servlets, JSP, JDBC and related technologies.
- Basic knowledge of JSF development, although these concepts will be reviewed during the course.
Teaching and assessment methods
- Initial skills assessment
- Training materials provided to participants
- Continuous assessment throughout the course
- End-of-course feedback questionnaire
- Combination of theory and practical application
- Attendance records
- Post-course follow-up evaluation
- Practical exercises
Dates and sessions
Choose the date and delivery format that suit you.
No upcoming sessions are currently available.
fr
en