3 arrows

Summer-Ready Savings: Up To $500 Off Training 

closeClose

Java RESTful Service Essentials

  • Tuition USD $1,895 GSA  $1,627.71
  • Reviews star_rate star_rate star_rate star_rate star_half 4064 Ratings
  • Course Code TT7305
  • Duration 2 days
  • Available Formats Classroom, Virtual

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.

Skills Gained

Our engaging instructors and mentors are highly-experienced practitioners who bring years of current "on-the-job" experience into every classroom. Working within in a hands-on learning environment, guided by our expert team, attendees will learn 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

Who Can Benefit

Experienced Java developers

Prerequisites

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. Students should have at least a year of practical development experience with Java and servlets, and should be familiar with XML and JSON.

  • Incoming students should have skills equivalent to those in this course, or should have taken this course: T2100 Core Java Programming for OO Experienced Developers (such as C# or C++)

Course Details

Session: Working with REST

Lesson: Overview of REST

  • Representational State Transfer
  • REST Characteristics
  • REST Elements
  • REST Architectural Principles
  • REST and HTTP
  • REST/HTTP: Representation-Oriented
  • REST Design Principles
  • Tutorial: Working with Eclipse (JEE Version) and Apache TomEE 7x
  • Lab: Working With REST

Lesson: Designing RESTful Services

  • Effectively Designing RESTful Services
  • Best Practices for Endpoint Definition
  • Using Query Parameters
  • Working with HTTP GET and DELETE
  • Working with HTTP PUT
  • Working with HTTP POST
  • Best Practices for HTTP Methods
  • Handling Additional Operations

Session: JAX-RS

Lesson: Introduction to JAX-RS

  • Understand some of the features of the JAX-RS framework
  • 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

Lesson: @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

Lesson: JAX-RS Content Negotiation

  • JAX-RS built-in content handler
  • How to inject content handlers into service
  • Basics of working with JSO
  • Capabilities for HTTP content negotiation
  • JAX-RS mechanisms for supporting content negotiation
  • Lab: Content Negotiation

Lesson: 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

Lesson: 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

Lesson: 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

Lesson: Asynchronous JAX-RS

  • Be able to make asynchronous requests
  • Develop resources to process request asynchronously
  • Lab: Asynchronous JAX-RS

When does class start/end?

Classes begin promptly at 9:00 am, and typically end at 5:00 pm.

Does the course schedule include a Lunchbreak?

Lunch is normally an hour long and begins at noon. Coffee, tea, hot chocolate and juice are available all day in the kitchen. Fruit, muffins and bagels are served each morning. There are numerous restaurants near each of our centers, and some popular ones are indicated on the Area Map in the Student Welcome Handbooks - these can be picked up in the lobby or requested from one of our ExitCertified staff.

How can someone reach me during class?

If someone should need to contact you while you are in class, please have them call the center telephone number and leave a message with the receptionist.

What languages are used to deliver training?

Most courses are conducted in English, unless otherwise specified. Some courses will have the word "FRENCH" marked in red beside the scheduled date(s) indicating the language of instruction.

What does GTR stand for?

GTR stands for Guaranteed to Run; if you see a course with this status, it means this event is confirmed to run. View our GTR page to see our full list of Guaranteed to Run courses.

Does ExitCertified deliver group training?

Yes, we provide training for groups, individuals and private on sites. View our group training page for more information.

Does ExitCertified deliver group training?

Yes, we provide training for groups, individuals, and private on sites. View our group training page for more information.

Great company -- easy to sign up and very organized. Loved my teacher and class overall.

Class was easy to sign up for and ExitCertified provided very good communication

Great class I learned a great deal from the material. There would seem to a large amount that I need to learn about.

Some Labs are very good but some steps it ask to update but its already updated, but overall its very good training.

The training was good but needed the basic skills of maximo before getting deep in the configuration of it.

3 options available

undo
  • Aug 26, 2021 Aug 27, 2021 (2 days)
    Location
    Virtual
    Language
    English
    Time
    10:00 AM 6:00 PM EDT
    Enroll
    Enroll
    SAVE on this course -  Promo Code: SUMMER500
  • Oct 7, 2021 Oct 8, 2021 (2 days)
    Location
    Virtual
    Language
    English
    Time
    10:00 AM 6:00 PM EDT
    Enroll
    Enroll
  • Dec 2, 2021 Dec 3, 2021 (2 days)
    Location
    Virtual
    Language
    English
    Time
    10:00 AM 6:00 PM EDT
    Enroll
    Enroll
Contact Us 1-800-803-3948
Contact Us
FAQ Get immediate answers to our most frequently asked qestions. View FAQs arrow_forward