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 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 DefinedOrganizational Framework
Technical Framework
What is new in SOA
SOA: Standards
Web services standardsESBs
Leveraging business processes
Challenge to adoption
The SOAD Process
Web Services Overview
Web Services ArchitecturallySpec and Standard Evolution
Web Services Interoperability Organization
Java and Web Services
Web Services, Java, and JEEJAXP, JAXB, and JAX-WS
JEE and Web Services
Web Services Stacks at a Glance
Web Services Quick start
SOAP Overview
Anatomy of a SOAP MessageSOAP 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-WSJava 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 TypeEntity 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 DevelopersWeb 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
Job Interview Questions
PHP + MYSQL Job Interview Questions & AnswersData Sciences Job Interview Questions and Answers
Machine Learning Job Interview Questions
Job Interview Preparation (Soft Skills Questions & Answers)
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