Mastering SOA  Java Web Services

Mastering SOA Java Web Services

Size
Price:

Read more

 2Month/20 Hours                                                  Price:120,000

                                                                                      100,000

Mastering SOA  Java Web Services


Mastering SOA and JEE Web Services focuses on providing an understanding of the fundamental technologies used in web services. This understanding is critical to being able to diagnose, troubleshoot, tune, and perform other lifecycle activities. Students will leave the course armed with the required skills to design, implement, test, and support JEE web services.

This lab-intensive course provides students with hands-on experience with implementations of the Java XML and Web Service APIs including JAXP, JAXB, JAX-WS, JAX-RS, WSEE, and XWSS. In terms of Java, the focus is on using the JAX-WS, JAX-RS, and JAXB APIs and implementations as the basic for generating and deploying web services and service clients. SOA and Web Services represent a groundbreaking evolution in distributed computing. The concepts are not altogether new, but the application of them, and the unanimous acceptance of core standards like HTTP, XML, SOAP, WSDL, and the various WS-* policies, has paved the way for XML Web Services and service-oriented architectures. An overreaching concern related to services is security.


Course Key Learning Summary 
After taking this course, students will be able to:

Understand and apply the basic concepts of SOA to the identification and design of web services
Understand the relationship between SOA and the entire spectrum of services from SOAP and RESTful services to microservices
Understand and apply the basic concepts of SOA to the identification and design of web services
Appreciate the concept of layered services including orchestration
Understand and intelligently discuss Web Services and the core technologies involved
Design, develop, and deploy real-world JEE Web Services
Expose existing Java components as XML Web Services
Write Java components that access remote Web Services hosted by a third party
Read and understand a WSDL document
Parse, process, and respond to a SOAP message
Understand the concepts behind REST and implement a REST-based web service
Use JAX-RS as the basis for implementing RESTful services in Java
Implement handlers to inject cross-cutting solutions for security, logging, auditing, and other needs
Work with WS-Security to protect content, resources, and other assets
Understand and utilize web service-related design patterns


Mastering SOA and Java Web Services Course Topics 

SOA Overview

Services and SOA Defined
Organizational Framework
Technical Framework
What is new in SOA

SOA: Standards

Web services standards
ESBs
Leveraging business processes
Challenge to adoption
The SOAD Process

Web Services Overview

Web Services Architecturally
Spec and Standard Evolution
Web Services Interoperability Organization

Java and Web Services

Web Services, Java, and JEE
JAXP, JAXB, and JAX-WS
JEE and Web Services
Web Services Stacks at a Glance
Web Services Quick start

SOAP Overview

Anatomy of a SOAP Message
SOAP and HTTP
SOAP Messaging
Remote Procedure Calls
The SOAP Envelope
SOAP in Action

SOAP (Service Implementation with JAVA)

Java API for XML-Based Web Services JAX-WS
Java API for XML Processing (JAXP)
Java Architecture for XML binding (JAXB)
SOAP with Attachments API for Java (SAAJ)
Handling Binary Data
REST vs SOAP

REST CONCEPTS

Overview of REST and JAX-RS

  • The REST Vision
  • Use of HTTP
  • Use of URIs
  • Use of Content Types
  • CRUD Operations and Business Operations
  • HATEOAS and the Richardson Maturity Model
  • JAX-RS
  • Applications, Resources, and Providers

Configuration and Lifecycle

  • The JAX-RS Application
  • XML Configuration
  • Annotation-Driven Configuration
  • Applications
  • Root Resource Classes
  • Per-Request vs. Singleton Lifecycle
  • Providers

Handling Requests

  • The Application Path
  • The @Path Annotation
  • The HTTP Method Annotations
  • Sub-Resource Locators
  • Annotation Inheritance and overriding
  • @XXXParam Annotations
  • The @DefaultValue Annotation
  • Parameter Types
  • Parameter Converters

Producing Responses

  • Supported Return Types
  • The Response Class
  • Response Entities
  • Binary Content
  • Delivering a File

Entity Translation

Entity Parameter and Return Type
Entity Providers
@Consumes and @Produces Annotations
Built-In Entity Providers
Custom Entity Providers

Working with XML and JSON

  • The JAXB Entity Provider
  • Driving XML Representations from Schema
  • Driving JSON Representations with JAXB
  • JSON Without JAXB: Jackson, MOXy, etc.
  • CRUD Patterns
  • Error Handling
  • Sub-Resources

Caching & Asynchronous interaction

Dependency Injection

  • The @Context Annotation
  • Injectable Types
  • The Application Subclass
  • Servlet Configuration and Context
  • Impact of Lifecycle Policies
  • Context Providers
  • Using CDI

Validation and Error Handling

  • Using Response
  • Throwing WebApplicationException
  • Exception Mapping Providers
  • Selection of Exception Mappers
  • Java EE Bean Validation
  • Constraint Annotations
  • Support for JSR-303
  • Annotating Method Parameters
  • Annotating Entity Classes
  • Error Reporting

Generic Services

  • Generic Entities
  • Generic Entity Providers
  • ParameterizedType
  • Reflection-Driven Entity Providers
  • Annotation Inheritance
  • CRUD Patterns, II
  • Serialization, Recursion, and Scope
  • Dynamic Sub-Resources

Sub-Resources

  • Significance of Sub-Resources
  • Exposing Sub-Objects
  • Exposing Collections
  • Multiple Paths to Resources
  • Exposing Actions
  • Using Sub-Resource Locators
  • Collection vs. Instance Services

The Client API

  • The Builder Pattern
  • Client
  • WebTarget
  • Invocation
  • Managing Content Types and Entities
  • Error Handling
  • Registering Providers
  • The Service Locator Pattern
  • Generic Clients

Filters and Interceptors

  • The Filter Interfaces
  • Processing Pattern
  • The Request and Response Context Interfaces
  • Aborting a Request
  • The Interceptor Interfaces
  • Adaptive Streams
  • Filters on the Client Side
  • Interceptor Strategy for Hypermedia

Microservices Architecture

API Examples

  • Postman Installation / Example
  • No Authentication
  • Basic Authentication
  • Digest Authentication
  • Bearer Token

Design Principles of Rest Security

  • Use Hashed Password
  • Validating Input Parameter

Using OAuth2

  • Supported Authorization Grant Types in 2-Legged Authorization
  • How Client Credentials Are Determined in 2-Legged Authorization
  • Relationship of User Credentials, Client Credentials, and Subject in 2-Legged Authorization

Course Audience

Java Developers
Web Services Developers
JEE developers and Architects
Solution Architect
Integration Specialist
Solution Architects


Suggested Prerequisite

Previous programming/web application development experience


International Student Fee : 900 USD



Flexible Class Options

Week End Classes For Professionals  SAT | SUN

Corporate Group Trainings Available

Online Classes – Live Virtual Class (L.V.C), Online Training


Related Courses

Java Programming for Beginners

Java Developer Training (Java Course)

Mastering SOA and Java Web Services

Java Developer Fundamentals Training


0 Reviews

Contact form

Name

Email *

Message *