About the course
Build the interconnected applications of tomorrow with this Java Web Services training course. Focusing on modern APIs and the Jakarta EE platform, this course provides developers with the practical skills to create and deploy robust, scalable web services.
You'll gain solid expertise in developing RESTful APIs using Jakarta REST (JAX-RS), the standard Java API for building RESTful services. Learn to handle data effectively using JSON and XML, secure your APIs, and build clients that can consume services reliably. While the emphasis is on modern REST, the course also covers working with traditional SOAP services, essential for many integration scenarios.
Featuring extensive hands-on exercises, this course ensures you get practical experience with designing, building, and deploying standards-based web services. Learn from an expert instructor and become proficient in using Java and Jakarta EE to create the vital API layer for modern B2B and B2C applications.
Instructor-led online and in-house face-to-face options are available - as part of a wider customised training programme, or as a standalone workshop, on-site at your offices or at one of many flexible meeting spaces in the UK and around the World.
-
- Design and implement standards-based RESTful APIs using Jakarta REST (JAX-RS).
- Work effectively with JSON and XML data formats for Web Service communication.
- Build clients capable of consuming both RESTful and SOAP Web Services.
- Secure Web Services using appropriate transport-level and modern API security methods.
- Test your Web Services thoroughly to ensure correctness and robustness.
- Understand the fundamental architectural differences between SOAP and REST.
- Deploy Web Services to Jakarta EE compatible application runtimes.
- Build interoperable and robust Web Services for modern application integration.
-
This course is designed for Java Developers who need to build, consume, or work with Web Services and APIs for application integration. It is particularly suitable for:
Developers building backend services for web, mobile, or single-page applications.
Developers working on system-to-system integration projects that rely on Web Services.
Developers involved in creating or consuming RESTful APIs.
Developers who need to understand and interact with existing legacy SOAP services.
Development teams using or considering the Jakarta EE platform for building services.
-
Participants should have attended our Java training course or have an equivalent solid working knowledge of Java SE. This includes:
Proficiency in Java language syntax and core APIs.
A strong understanding of Object-Oriented Programming (OOP) principles.
Experience with compiling and running Java applications.
Basic familiarity with web concepts such as HTTP requests and responses is helpful.
No prior experience with Java EE, Jakarta EE, or Web Services development is required.
-
This Java Web Services course is available for private / custom delivery for your team - as an in-house face-to-face workshop at your location of choice, or as online instructor-led training via MS Teams (or your own preferred platform).
Get in touch to find out how we can deliver tailored training which focuses on your project requirements and learning goals.
-
Introduction to Web Services & APIs
What are Web Services and APIs?
Understanding Architectural Styles: SOAP vs. REST
Current landscape and choosing the right approach
Overview of Jakarta EE for Web Service development
RESTful Web Services with Jakarta REST (JAX-RS) - Core Module
Principles of REST (Resources, URIs, HTTP Methods, Statelessness)
Introduction to Jakarta REST (JAX-RS)
Building RESTful Resources and Endpoints (@Path, @GET, @POST, @PUT, @DELETE)
Request and Response Handling (@Consumes, @Produces, Response Builder)
Accessing Path Parameters, Query Parameters, and Form Parameters
Handling Data Formats: JSON and XML
Introduction to Jakarta JSON Processing (JSON-P)
Introduction to Jakarta JSON Binding (JSON-B)
Using Jakarta XML Binding (JAXB) for XML data
Building REST Clients using JAX-RS Client API
RESTful Design Patterns and best practices
Understanding and Interacting with SOAP Web Services
Overview of SOAP messaging structure and envelope
Conveying SOAP over HTTP
Introduction to Jakarta XML Web Services (JAX-WS)
Understanding WSDL (Web Service Description Language)
Creating and Consuming SOAP Web Services (Focus on client-side interaction with existing services)
Handling SOAP Faults for error reporting
Advanced Web Services Techniques
Asynchronous Web Service methods (both REST and SOAP context, where applicable)
Exception Handling in Web Services (JAX-RS Exception Mappers, SOAP Faults)
Handling Binary Payloads (e.g., file uploads/downloads in REST)
Using Handlers (SOAP handlers for message processing - if relevant for legacy systems)
Securing Web Services
Overview of Web Service Security Concerns
Transport-level Security (SSL/TLS)
Modern API Security Concepts:
Authentication and Authorisation (Integrating with Jakarta Security context)
Introduction to Token-based Security (e.g., JWT, OAuth2/OpenID Connect concepts)
(Optional) Overview of WS-Security standards (for interacting with legacy SOAP services)
Testing Web Services
Strategies for testing RESTful APIs
Writing unit and integration tests for Jakarta REST endpoints
Deployment Considerations
Packaging Web Service applications (WAR files)
Deploying to Jakarta EE compatible runtimes
Basic considerations for containerised deployment (e.g., Docker)
Integration & Orchestration Patterns (Optional Module/Conceptual Overview)
Overview of Service Oriented Architecture (SOA) vs. Microservices Architecture
(Optional) Brief overview of traditional patterns: BPEL (Business Process Execution Language) and ESB (Enterprise Service Bus) - framed historically or for specific integration scenarios.
(Alternative/Modern) Introduction to API Gateways or other integration patterns common in microservices architectures.
-
The official Jakarta EE website - https://jakarta.ee/
Jakarta REST (JAX-RS) specification - https://jakarta.ee/specifications/restful-ws/
Jakarta XML Web Services (JAX-WS) specification - https://jakarta.ee/specifications/xml-web-services/
Jakarta JSON Processing (JSON-P) specification - https://jakarta.ee/specifications/jsonp/
Jakarta JSON Binding (JSON-B) specification - https://jakarta.ee/specifications/jsonb/
Download a popular Jakarta EE runtime (Payara Community) - https://www.payara.fish/products/payara-platform-community/
Download Apache Maven (a common build tool) - https://maven.apache.org/download.cgi
Install Gradle (another popular build tool) - https://gradle.org/install/
Get the latest OpenJDK - https://openjdk.org/install/
Popular Java IDE (IntelliJ IDEA) - https://www.jetbrains.com/idea/
Popular Development Environment (Eclipse IDE) - https://www.eclipse.org/downloads/
MDN Web Docs: HTTP Overview - https://developer.mozilla.org/en-US/docs/Web/HTTP
Trusted by