Curso RESTful Web Services

  • DevOps | CI | CD | Kubernetes | Web3

Curso RESTful Web Services

24 horas
Visão Geral

Curso RESTful Web Services, ajuda os participantes a desenvolver uma experiência em Representational State Transfer (REST); o curso aborda tópicos como Projetar serviços REST, construir serviços JAX-RS, entender a injeção JAX-RS e outros aspectos importantes.

Objetivo

Após a conclusão do Curso RESTful Web Services, os participantes serão capazes de:

  • Desenhar serviços RESTful
  • Crie serviços JAX-RS
  • Entenda a injeção JAX-RS
  • Configurar negociação de conteúdo HTTP
  • Escalar aplicativos JAX-RS
  • Crie clientes RESTful
  • Compare e contraste as implementações JAX-RS
Pre-Requisitos
  • Os participantes devem ter conhecimento de desenvolvimento Java. Experiência em desenvolvimento Java EE é recomendada, porém não obrigatória.
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico

Web Services Overview

Definition

  • Legacy Systems
  • Benefits of Web Services
  • Architecture

Standards and Portability

  • XML and Related Standards
  • JSON
  • HTTP

SOAP-Based Services

  • Overview
  • SOAP Messages, Requests, and Responses
  • WSDL
  • Java APIs and Programming Models

Introduction

Overview and Principles

  • REST Characteristics
  • Resources and Operations
  • REST Principles
  • Requests and Responses
  • REST APIs
  • URI Templates
  • GET, POST, PUT, DELETE
  • Safe and Idempotent Methods
  • Comparison of REST and SOAP

Introduction to JAX-RS

APIs and Implementations

  • JAX-RS Overview, Annotations
  • JAX-RS Implementations

Runtime Environment

  • Application Server, Servlet-Only Container
  • Architectural and Implementation Perspectives
  • Configuring the Application

Applications, Resources, and Providers

  • JAX-RS Applications
  • Resource Classes and @Path
  • Provider Classes and @Provider
  • Default Lifecycles
  • The Application Class and rest-path

Ajax-JavaScript Clients

  • Overview
  • Classic vs. Ajax Interactions
  • Working with Ajax-JavaScript

Resources and Requests

Resources and Sub-Resources Root Resource Classes, Resource Methods, Sub Resource Methods @GET, @POST, @PUT, @DELETE

  • Sub Resource Locators
  • Naming Conventions and Rules
  • Dispatching Requests to Methods

Binding Request Data Request Data Injection and Conversion

  • Default Values
  • Fields vs. Method Parameters

Context-Based Injection

  • Injection via @Context
  • Context-Injectable Types
  • Context Injection from the Web Container
  • Fields vs. Method Parameters

HTTP Entities

Complex Content and Entities Working with Complex Content

  • @Consumes and @Produces
  • Content Negotiation
  • Standard Entity Providers

Working with JSON Returning Data as JSON

  • Working with JSON in JavaScript
  • Processing JSON Responses

Working with XML JAXB and Mapping to XML

  • Returning Data as XML
  • Working with XML on the Client
  • Customizing Content, Custom Media Types
  • Working with Collections

XML vs. JSON

Responses

Response Class Return Types and HTTP Response Codes

  • Appropriate Responses for HTTP Methods
  • Choosing the Right Response

Error Handling Exception Mappers

  • Web Application Exception
  • Response vs. Thrown Exception
  • Error Responses

Sub Resource Locators Motivation and Uses

  • Locating the Locator
  • Initializing the Sub Resource

Binary Content

  • File, InputStream, StreamingOutput
  • Using StreamingOutput

Java Client API

  • Java Client – Options and Ingredients
  • Building and Sending the Request
  • Consuming the Response
  • Options for the Response Data
  • Asynchronous Requests

Integration with Java EE

Integration with EJB CDI – Contexts and Dependency Injection

  • Activation, Scopes, and JAX-RS Lifecycles
  • Injection in CDI-Enabled JAX-RS Applications
  • Enhanced Java EE Lifecycl

Security

Java EE Security Overview

  • Security Requirements in JAX-RS
  • Declarative, Role-Based Security
  • Security Constraints
  • Annotation-Based Security Authentication
  • Configuration
  • Authentication Models: Basic, Digest, Client-Cert Programmatic Security
  • Security Context
  • Client Security HTTPS
TENHO INTERESSE

Cursos Relacionados

Curso Ansible Red Hat Basics Automation Technical Foundation

16 horas

Curso Terraform Deploying to Oracle Cloud Infrastructure

24 Horas

Curso Ansible Linux Automation with Ansible

24 horas

Ansible Overview of Ansible architecture

16h

Advanced Automation: Ansible Best Practices

32h