Java REST Essentials

Explore Core Concepts, Principles, and Java Implementations for RESTful Services and More

TT7305

Intermediate

2 Days

Course Overview

Geared for experienced Java developers, Java REST Essentials is a two day, lab-intensive services training course that introduces developers to the core concepts, principles, and Java implementations for RESTful services.  Today's development environments are increasingly dominated by sophisticated tooling that makes the implementation of RESTful services less arduous.  The proper design of these services is far more complex and demanding.  Java RESTful Service Essentials focuses on providing an understanding of the fundamental principles and technologies that are used in building these services.  This understanding is critical to being able to diagnose, troubleshoot, tune, and perform other lifecycle activities.

 

Learning Objectives

This course combines engaging instructor-led presentations and useful demonstrations with valuable hands-on labs and engaging group activities. Throughout the course you’ll learn how to:

  • Understand and apply the basic concepts of REST
  • Understand and intelligently discuss the similarities and differences between RESTful services and SOAP-based services
  • Appreciate the security concerns associated with RESTful services
  • Design, develop, and deploy real-world RESTful Services
  • Effectively define and design endpoints
  • Work with query parameters
  • Determine the best format to use for exchanging data
  • Understand the principles associated with HTTP methods and how to stay congruent to them
  • Extend the semantics of the RESTful service beyond the HTTP methods
  • Implement RESTful services using JAX-RS to
  • Handle various HTTP methods
  • Use different approaches for parameters
  • Deal with content negotiation
  • Work with different data formats including XML and JSON
  • Handle exceptions
  • Implement RESTful Java clients
  • Develop JAX-RS Java clients using the JAX-RS 2.0 Client API
  • Manage different Web targets
  • Deal with content negotiation on the client
  • Work with different data formats including XML and JSON
  • Properly process server responses
  • Implement JAX-RS Filters and Interceptors
  • Intercept and manipulate service requests and responses
  • Dynamically register interceptor to resources
  • Understand the concept of NameBinding
  • Discover asynchronous JAX-RS processing
  • Implement an asynchronous JAX-RS service endpoint
  • Register response listeners

 

If your team requires different topics, additional skills or a custom approach, our team will collaborate with you to adjust the course to focus on your specific learning objectives and goals.

Course Objectives

Learning Objectives

This course combines engaging instructor-led presentations and useful demonstrations with valuable hands-on labs and engaging group activities. Throughout the course you’ll learn how to:

  • Understand and apply the basic concepts of REST
  • Understand and intelligently discuss the similarities and differences between RESTful services and SOAP-based services
  • Appreciate the security concerns associated with RESTful services
  • Design, develop, and deploy real-world RESTful Services
  • Effectively define and design endpoints
  • Work with query parameters
  • Determine the best format to use for exchanging data
  • Understand the principles associated with HTTP methods and how to stay congruent to them
  • Extend the semantics of the RESTful service beyond the HTTP methods
  • Implement RESTful services using JAX-RS to
  • Handle various HTTP methods
  • Use different approaches for parameters
  • Deal with content negotiation
  • Work with different data formats including XML and JSON
  • Handle exceptions
  • Implement RESTful Java clients
  • Develop JAX-RS Java clients using the JAX-RS 2.0 Client API
  • Manage different Web targets
  • Deal with content negotiation on the client
  • Work with different data formats including XML and JSON
  • Properly process server responses
  • Implement JAX-RS Filters and Interceptors
  • Intercept and manipulate service requests and responses
  • Dynamically register interceptor to resources
  • Understand the concept of NameBinding
  • Discover asynchronous JAX-RS processing
  • Implement an asynchronous JAX-RS service endpoint
  • Register response listeners

 

If your team requires different topics, additional skills or a custom approach, our team will collaborate with you to adjust the course to focus on your specific learning objectives and goals.

Course Prerequisites

Audience

This is an intermediate level training course, designed for experienced Java developers and architects who need to identify, design, and implement web services. We will explore and apply the terminology, the specification, the processes and technologies specific to web services. 

 

Pre-Requisites

To ensure a smooth learning experience and maximize the benefits of attending this course, you should have at least a year of practical development experience with Java and servlets and should be familiar with XML and JSON basics.

Take Before: Students should have incoming practical skills aligned with those in the course(s) below, or should have attended the following course(s) as a pre-requisite:

  • TT2104: Fast Track to Core Java Programming for OO Developers (C+, C#, etc.)

Next Steps / Follow-on Courses: We offer a wide variety of follow-on courses for next-level Java development skills, Java for Web / Full Stack, Java EE, Spring, REST, Microservices, Unit Testing / TDD, Java secure coding, mobile development and more. Please see our Java Developer Courses & Learning Paths for options based on your specific role and goals. 

Course Agenda

Please note that this list of topics is based on our standard course offering, evolved from typical industry uses and trends. We will work with you to tune this course and level of coverage to target the skills you need most.

  1. Overview of REST
  • The basics of the REST architectural style
  • The advantages and disadvantages of that style
  • Relating REST to HTTP
  • The advantages and disadvantages of that implementation
  • The comparisons between SOAP and REST
  • Tutorial: Building Web Applications in Intellij
  1. Designing RESTful Services
  • The basic process for designing RESTful services
  • Best practices for defining endpoints
  • Options and best practices for exchanging data
  • Requirements associated with the HTTP methods
  • Best practices for using HTTP methods
  • Options for extending operations
  1. Introduction to JAX-RS
  • Understand some of the features of the JAX-RS framewor
  • Be familiar with process for implementing RESTful services
  • Be able to develop and deploy a simple REST service
  • How JAXB supports XML interoperability
  • How to use JAXB with JAX-RS
  • Lab: Introduction to JAX-RS
  1. @Path: URI Matching
  • JAX-RS mechanisms for mapping URIs to resource
  • How to use @Path expressions to map URIs
  • How to use @Path expressions to extract values from URIs
  • Lab: URI Matching JAX-RS
  1. JAX-RS Content Negotiation
  • JAX-RS built-in content handler
  • How to inject content handlers into service
  • Basics of working with JSON
  • Capabilities for HTTP content negotiation
  • JAX-RS mechanisms for supporting content negotiation
  • Lab: Content Negotiation
  1. JAX-RS Request and Response
  • How information about the request can be injected into the resource
  • The different injection targets of the resource
  • How to build a ‘complex’ response
  • How to respond to a HTTP POST
  • The JAX-RS exception hierarchy
  • How exceptions can be mapped to response codes
  • Lab: The Reservation Service
  1. JAX-RS Client API
  • Be able to invoke a JAX-RS service using the client API
  • Understand the purpose of the WebTarget object
  • Be able to dynamically resolve path template values
  • Understand some of the return codes
  • Be able to filter client request and server responses
  • Lab: JAX-RS Clients
  1. JAX-RS Filters and Interceptors
  • Understand the purpose of JAX-RS filters
  • Be able to develop interceptors
  • Be able to define global filters and interceptors
  • Dynamically add interceptors and filters
  • Understand NameBinding
  • Lab: JAX-RS Filters and Interceptors
  1. Asynchronous JAX-RS
  • Be able to make asynchronous requests
  • Develop resources to process request asynchronously
  • Lab: Asynchronous JAX-RS

Course Materials

Setup Made Simple! Learning Experience Platform (LXP)

All applicable course software, digital courseware files or course notes, labs, data sets and solutions, live coaching support channels and rich extended learning and post training resources are provided for you in our “easy access, no install required” online Learning Experience Platform (LXP), remote lab and content environment. Access periods vary by course. We’ll collaborate with you to ensure your team is set up and ready to go well in advance of the class. Please inquire about set up details and options for your specific course of interest

Raise the bar for advancing technology skills

Attend a Class!

Live scheduled classes are listed below or browse our full course catalog anytime

Special Offers

We regulary offer discounts for individuals, groups and corporate teams. Contact us

Custom Team Training

Check out custom training solutions planned around your unique needs and skills.

EveryCourse Extras

Exclusive materials, ongoing support and a free live course refresh with every class.

Attend a Course

Please see the current upcoming available open enrollment course dates posted below. Please feel free to Register Online below, or call 844-475-4559 toll free to connect with our Registrar for assistance. If you need additional date options, please contact us for scheduling.

Course Title Days Date Time Price
Java REST Essentials 2 Days May 13 to May 14 10:00 AM to 06:00 PM EST $1,695.00 Enroll
Java REST Essentials 2 Days Jul 15 to Jul 16 10:00 AM to 06:00 PM EST $1,695.00 Enroll
Java REST Essentials 2 Days Sep 16 to Sep 17 10:00 AM to 06:00 PM EST $1,695.00 Enroll
Java REST Essentials 2 Days Oct 28 to Oct 29 10:00 AM to 06:00 PM EST $1,695.00 Enroll
Java REST Essentials 2 Days Dec 9 to Dec 10 10:00 AM to 06:00 PM EST $1,695.00 Enroll

Mix, Match & Master!
2FOR1: Two Courses, One Price!

Enroll in *any* two public courses (for 2023 *OR* 2024 dates!) by December 31, for one price!  Learn something new, or share the promo!

Click for Details & Additional Offers

Learn. Explore. Advance!

Extend your training investment! Recorded sessions, free re-sits and after course support included with Every Course
Trivera MiniCamps
Gain the skills you need with less time in the classroom with our short course, live-online hands-on events
Trivera QuickSkills: Free Courses and Webinars
Training on us! Keep your skills current with free live events, courses & webinars
Trivera AfterCourse: Coaching and Support
Expert level after-training support to help organizations put new training skills into practice on the job

The voices of our customers speak volumes

Special Offers
Limited Offer for most courses.

SAVE 50%

Learn More