The Java Enterprise Edition is one of the leading application programming platforms for enterprise Java development. With Java EE 8, it is easier to develop modern and lightweight web services with the latest API additions and improvements.
This comprehensive 2-in-1 course is comprehensive, example-oriented guide covering APIs and why approaches are necessary in modern Java EE 8.Demonstrates how to implement application business logic with minimal boilerplate code. You’ll design modern, stylish web services with Java EE APIs. You’ll focus on the latest Java EE 8 APIs and secure your web services with JSON Web token.
The Java Enterprise Edition is one of the leading application programming platforms for enterprise Java development. With Java EE 8, it is easier to develop modern and lightweight web services with the latest API additions and improvements.
This comprehensive 2-in-1 course is comprehensive, example-oriented guide covering APIs and why approaches are necessary in modern Java EE 8.Demonstrates how to implement application business logic with minimal boilerplate code. You’ll design modern, stylish web services with Java EE APIs. You’ll focus on the latest Java EE 8 APIs and secure your web services with JSON Web token.
Contents and Overview
This training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, Learning Java EE 8, covers full-fledged application development with the latest API'sThis course will teach you important core JAVA EE components. You’ll also learn about the asynchronous communication protocol. You’ll also develop a car management enterprise application. It also answers questions related to how Java EE compares to the Java language, should developers transition to it, and what types of application would benefit from it.
The second course, Building Web Services with Java EE 8, covers creation of modern RESTful web services with the Java EE 8 API.This course will teach you how to develop state-of-the-art RESTful web services with the latest Java EE 8 APIs. You’ll implement, build, and package you're first working web service as a prototype. You’ll also explore advanced web service topics such as validation, JWT security, and diagnosability.
By the end of this course, you’ll have a thorough understanding of the Java EE 8 APIs required for modern RESTful and lightweight web service development as well as full-fledgedenterprise applications.
About the Authors
This video will give you an overview about the course.
The video shows how to implement business domain logic in Java EE and plain Java. It covers how Java EE encourages business-oriented solutions. Basic Java EE APIs is introduced.
The video shows the differences between the EJB and CDI APIs. It covers when to use which and what needs to be done in order to setup the managed beans.
The video shows CDI producers, their power and how to define and use them.
The video shows the necessity of and how to define and use CDI qualifiers. It covers how to define custom qualifier annotations.
The video explains the different scopes or managed beans. It covers both EJB and CDI, their differences and similarities.
The video explains how to model and implement domain events using CDI. CDI comes with a powerful eventing mechanism which allows to decouple event creation from event handling.
This video shows how to define JAX-RS resources that make an Java EE application accessible via HTTP. It covers how JAX-RS applications are bootstrapped and how Java types are translated into HTTP payloads.
This video shows how to declaratively marshal Java types to JSON definitions and back. It covers how JAX-RS integrates with JSON-B definitions out of the box.
This video shows how to programmatically marshal Java types to JSON definitions and back using JSON-P. It covers how JAX-RS integrates with JSON-P.
This video shows how to send custom HTTP responses with JAX-RS. Examples for custom responses are HTTP status codes or header fields.
This video shows how to validate HTTP messages using Bean Validation and JAX-RS. It covers how to define custom validation constraints that match the application business logic.
This video shows how to handle exception that occur within our application in JAX-RS.
This video shows how JPA is used to map domain entities to the database. It covers how to bootstrap JPA for enterprise applications and how to declaratively define persistence mappings.
This video shows how to define entity relations that are part of the business domain. It covers which JPA definitions are required to specify the relation mapping in the database tables.
This video shows how to define and use application server datasources. The datasources are used to access relational databases.
This video shows how to use technical transaction that handle database queries. It covers how exceptions that occur during the active transaction are handled.
This video shows how to define and bind interceptors. Interceptors are used to interrupt the execution of methods and inject custom logic.
This video shows how custom interceptors are bound and activated via custom interceptor binding annotations. This approach minimizes coupling in our application.
This video shows how to configure Java Enterprise application via CDI. It covers how CDI producers fulfill to define custom configuration requirements. The example configuration load the configured values from an application properties file.
This video shows how and when to use caching. It covers how to build a simple yet effective custom cache and includes an outlook to the JCache API.
This video shows how and when to include logging in enterprise applications. It covers the shortcomings of traditional logging, which other solutions are reasonable and possible.
This video shows how to define asynchronous EJB methods. It covers the possibilities and implications of asynchronous execution within EJBs.
This video shows how to define and fire asynchronous CDI events with both asynchronous EJB methods and CDI definitions.
This video shows what container-managed threads are, what the threading requirements for enterprise applications are and which Java EE functionalities support developers. It covers the required APIs to use container-managed threads.
This video shows how to define application timers via EJBs and CDI managed beans. It covers which APIs to use to define timers and scheduled jobs.
This video shows the motivations behind asynchronous JAX-RS resources and how to make use of them. It covers common use cases for this functionality.
This video shows how to access HTTP resources using the JAX-RS client. It covers how web targets are defined and used to send requests and read responses from and to Java types, respectively.
This video shows how to use the JAX-RS client to retrieve collection resources and automatically map them to corresponding Java collection types. It also covers path templates.
This video shows how to handle client exceptions and potential errors. It also covers how to make client invocations more resilient by defining different type of timeouts.
This video shows how to use the asynchronous and reactive JAX-RS client functionality. It covers how to use the CompletableFuture type in client invocations and the rx invocation builder.
This video shows how to use the JAX-RS API to define and implement Server-Sent Events (SSE) resources. It covers the required JAX-RS types and APIs.
This video shows how to consume Server-Sent Events (SSE) resources both on the command line and by using the JAX-RS SSE client. It also cover the last event ID HTTP header that controls which data is being resent.
This video shows how to use the Java EE’s WebSocket API to define server endpoints. It also covers how to define MessageDecoders and Encoders.
This video shows how to access WebSocket endpoints by the WebSocket API. It also covers how client connections are bootstrapped.
Java EE has come a long way. In the past it has been considered heavy weight, but these times are long over. Java EE is the most lightweight enterprise framework currently out there. This video explains why.
The Java EE platform has a wide variety of different APIs for the development of modern enterprise applications.
This video presents the different APIs of Java EE 8 and their latest advances, with a focus on the more microservice relevant APIs.
What is required to develop, build and run your first Java EE 8 powered microservice? This is the question we are going to answer in this video by developing a small Hello World web service.
Docker is the de-facto standard when it comes to packaging web services. This video shows you how to build a Java EE 8 based microservice image using Payara and run it as a container.
With Java EE 8 and JAX-RS 2.1 the domain logic can easily be exposed via a REST API. Often the entities are exposed as resources offering basic CRUD functionality. This video shows how this can be done.
Proper REST APIs allow for the navigation to related resources using the URI. Usually, this is achieved by nesting the path.
In JAX-RS, you can use sub-resource locators to return nested REST resource implementations. This video shows different approaches to using sub resources.
According to the REST maturity model, you should make use of HTTP status codes to signal erroneous behavior. This video shows different approaches to error handling in JAX-RS.
When working with web services, you also need to be able to call them from within your program or service.
This video shows how to implement the client-side of a web service using the JAX-RS client APIs.
Automated testing is an essential part in professional software engineering. This video gives an overview of different test strategies and shows to web service APIs using the Jersey Test Framework and the Test Containers Framework.
Content-types and content negotiation play a central role in your REST APIs. It can be used to accommodate different clients and also different API versions. This video will focus on the basics of using content types and smart content negotiation.
JSON-B is the new API to marshall and unmarshall POJOs to and from JSON. This video will show how to use the API implicitly in your REST resources, customize the marshalling behavior using annotations and also how to use JSON-B programmatically.
Sometimes more control over generating and parsing JSON structures is required. This is what the JSON-P API is for. In this video we show the basics of using JSON-P as well the additions made in Java EE 8 such as the JSON Pointers, Patch and Diff APIs.
Sophisticated use cases require traversing the relations between your REST resources. This video will demonstrate how a hypermedia-driven REST API can be constructed using JSON-P and JAX-RS.
Usually request processing on the server works in a synchronous mode. Under high load with lots of concurrent connections, there are a lot of wasted resources and the server does not scale that well. In this video, we will see how asynchronous processing addresses this.
The JAX-RS APIs support asynchronous processing of requests. This video shows the basic server-side implementation of async REST resources.
The Java EE Concurrency API can be used nicely in conjunction with the JAX-RS async APIs. This video shows how it is done.
Asynchronous processing can also be used at the client-side. This video shows the basic usage of the asynchronous JAX-RS Client API.
Traditional web services usually apply a request-response style communication approach. This video shows how Server-sent Events can be used to send data from the server to the client, maybe for a stock ticker or to display live telemetry data.
This video shows how SSE can be implemented on the server-side using the new Java EE 8 JAX-RS APIs.
In order to receive Server-sent Events, the client has to issue a GET request using the text/event-stream media type. This video shows how to implement a SSE client using the JAX-RS API as well as using JSP, HTML, and JavaScript.
SSE also allows to broadcast events to all registered event sinks. This video shows how SSE broadcasts are implemented on the server-side using JAX-RS as well as on the client-side using JSP, HTML, and JavaScript.
Good REST APIs validate the requests they accept and return HTTP status code 400 BAD_REQUEST if invalid. This video shows how to implement this behavior easily by combining Javax.Validation and JAX-RS.
Token-based authentication and authorization is becoming popular when implementing webservices. JSON Web Tokens (JWT) are a way to represent public claims using JSON. This video shows how to extract and validate JWT for your REST resources using a JAX-RS request and response filter.
In a highly distributed environment, the diagnosability triangle of logging, metrics, and tracing play a crucial role. Java EE 8 and JAX-RS provides a lot of extension points for third-party open source components to retrofit these features. This video shows how you can add logging, metrics, health checks, and tracing to your Java EE 8 webservice with minimal code.
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.