01/24/2022 - 01/28/2022
10:00 AM - 06:00 PM
Online Virtual Class
USD $2,895.00
Enroll
02/07/2022 - 02/11/2022
10:00 AM - 06:00 PM
Online Virtual Class
USD $2,895.00
Enroll
03/07/2022 - 03/11/2022
10:00 AM - 06:00 PM
Online Virtual Class
USD $2,895.00
Enroll

Topics

 
  • XML schema design
  • SOAP
  • WSDL
  • JAXB
  • JAX-WS
  • JSR 921
  • UDDI
  • WS-Security
  • Interoperability issues
  • WS-Addressing
  • WS-ReliableMessaging
  • WS-Trust and WS-Federation

What you will learn

  After completing this course, the student should be able to:
  • Confidently design XML schema and WSDL.
  • Tell the difference between different SOAP styles (document literal, RPC literal etc.)
  • Implement a Web Service using Eclipse WTP and JBoss.
  • Write a Web Services client using standard Java specifications.
  • Secure web services.
  • Learn the interoperability issues especially with the .NET platform.

Audience

 

Java EE developers who will like to learn about how to build a Web Services based solution. This class covers many advanced topics that will help them build a solution appropriate for a large business.

Prerequisites

 

Java programming. Beginner level knowledge of Java EE and XML.

For those with no prior Java EE experience the following course is suggested:

WA1718 Java EE 5 Programming with JSF, EJB 3.0, and JPA using JBoss 5.1

Duration

  Five days.
Lab Setup Guide

Outline for Programming JAX-WS Web Services with Eclipse on JBoss 5.1

Chapter 1. Java EE Tools in Eclipse WTP

 
  • Eclipse Platform
  • Eclipse Workspace
  • Perspectives, Views & Editors
  • Basic Operations with Eclipse Views and Perspectives
  • The Java Perspective
  • The Debug Perspective
  • Navigator View
  • Package Explorer
  • Outline View
  • Problems View
  • Eclipse Preferences
  • Build and Validation
  • Code Completion, Templates and Snippets
  • Searching
  • Configure Compiler Class Path
  • JRE Switching
  • Eclipse WTP
  • Java EE Perspectives
  • Project Explorer View
  • Servers View
  • JPA Tools
 

Chapter 2. Introduction to Web Services

 
  • A Conceptual Look at Services
  • Defining Services
  • Service Communication Analogy
  • Three Key Service Questions
  • Connecting the Dots
  • SOA: Runtime Implementation
  • What Is a Web Service?
  • Enterprise Assets as Services
  • Typical Development Workflow
  • Advantages of Web Services
  • Web Service Business Models
  • Example: Internal System Integration
  • Example: Business Process Externalization
  • Web Services Standards
  • Binding via SOAP
  • SOAP in Protocol Stack
  • SOAP Structure
  • SOAP Message Architecture
  • Applying SOAP
  • Interface via WSDL
  • WSDL Structure
  • Applying WSDL
  • Locating a Service
  • UDDI Overview
  • UDDI Terminology
  • UDDI Structure
  • Applying UDDI
  • WS-I Overview
  • WS-I Deliverables
  • Summary
 

Chapter 3. Introduction to Schema

 
  • What is an XML Schema?
  • Instance Documents
  • A Simple Instance Document
  • Creating a Schema File
  • Defining a Simple Element
  • Defining a Complex Element
  • Defining Element Attributes
  • Referring to an Element From Another Element
  • Adding Restrictions
  • Putting It All Together
  • Referring to a Schema from an XML Document
  • Global Elements vs. Local Elements
  • Summary
 

Chapter 4. Complex Data Types In Schema

 
  • Simple Types
  • Complex Types
  • Complex Type Example
  • Controlling Content
  • <sequence>
  • <choice>
  • <all>
  • Combining It All
  • The XML
  • Anonymous vs. Named
  • Address Example
  • Named Complex Types
  • Named ComplexType Example
  • Using Named Complex Type
  • The XML
  • <xs:any>
  • Summary
 

Chapter 5. The Java Architecture for XML Binding (JAXB)

 
  • Introduction to JAXB
  • Overview of Data Binding
  • JAXB Architecture
  • Binding Example
  • Binding Framework Example
  • Java and XML Mapping Overview
  • Namespace and Package Name Mapping
  • Simple Type Mapping
  • Complex Type Mapping
  • Customizing Complex Type Mapping
  • Property Accessor Customization
  • Property Mapping Customization
  • XML Element Mapping
  • Mapping Java Enums
  • Mapping Collections
  • Generating Java Class and Schema
  • Marshalling and Unmarshalling
  • Summary
 

Chapter 6. Introduction to JAX-WS

 
  • What is JAX-WS?
  • Advantages of JAX-WS
  • Why Do We Need a Programming Model?
  • Basic Java to WSDL Mapping
  • Developing a Service Provider
  • The Service Implementation Class
  • The Service Endpoint Interface (SEI)
  • Service Implementation Options
  • Developing a Consumer
  • Static Client Development
  • The Service Class
  • The BindingProvider Interface
  • Summary
 

Chapter 7. Web Services Description Language (WSDL)

 
  • WSDL Overview
  • WSDL Syntax Overview
  • <definitions>
  • <import>
  • <types>
  • <message>
  • <portType>
  • <operation>
  • <binding>
  • <service>
  • Summary
 

Chapter 8. JAX-WS Mapping Details

 
  • Introduction to Mapping in JAX-WS
  • Top-down and Bottom-up Mapping
  • WSDL to Java Mapping
  • XML Data Type to JavaBean Mapping
  • Mapping <portType> to the SEI
  • Mapping the SOAP <binding>
  • Customizing WSDL to Java Mapping
  • Java to WSDL Mapping
  • JavaBean to XML Mapping
  • Mapping SEI to <portType>
  • Mapping Java Method to <operation>
  • Input Parameter Mapping
  • Method Output Mapping
  • Bare Input and Output Mapping
  • RPC Literal Style
  • Summary
 

Chapter 9. Simple Object Access Protocol (SOAP)

 
  • SOAP Overview
  • SOAP in Protocol Stack
  • SOAP Document Components
  • Example SOAP Request Document
  • Example SOAP Response Document
  • The <Envelope> Element
  • The <Header> Element
  • The <Body> Element
  • SOAP Communication Style
  • Communication Style Example
  • Setting the Style in WSDL
  • RPC/Encoded Style
  • RPC/Literal Style
  • Document/Literal Style
  • Document/Literal Wrapped Style
  • Summary
 

Chapter 10. Web Services Interoperability (WS-I)

 
  • Introduction
  • Goal
  • What Comes out of WS-I?
  • WS-I Tools
  • Profiles
  • WS-I Messaging
  • Messaging Highlights
  • Service Description
  • Service Description Highlights
  • Service Publication/Discovery
  • Security
  • .NET Interoperability
 

Chapter 11. Building an EJB Based Web Service

 
  • Introduction
  • Why Use EJB as Service Implementation?
  • Implementing EJB Web Service
  • Using a Service Endpoint Interface (SEI)
  • Summary
 

Chapter 12. Advanced JAX-WS API

 
  • Publishing a Web Service
  • Web Service Context
  • Message Context
  • Working With Raw XML
  • Raw XML: Server Side
  • XML Handling Strategies
  • Raw XML: Client Side
  • Summary
 

Chapter 13. Error Handling

 
  • Introduction
  • Fault
  • Designing Faults
  • System Problems
  • Business Rule Violation
  • Summary
 

Chapter 14. Managed Web Service Client Binding

 
  • JBoss Web Service Deployment
  • Routing Web Service Requests
  • Writing Portable Web Service Clients for JBoss
  • Using a Packaged WSDL
  • Managed Web Service Clients
  • JBoss @WebServiceRef Customization
  • JBoss Web Service Tools
  • Running JBoss Web Services in Eclipse
  • Summary
  • Reference
 

Chapter 15. Entities and Java Persistence API

 
  • Data Persistence
  • Java Persistence API
  • Entities
  • Session Beans Vs Entities
  • Entities
  • Persisting and Retrieving Data
  • Accessing Entities
  • EntityManager & Persistence Unit
  • Persistence Context
  • Entities - Example
  • persistence.xml – Hibernate Provider
  • persistence.xml – Open JPA Provider
  • persistence.xml - Toplink
  • Entity Instance Lifecycle
  • Creating EntityManager in Session EJB
  • Creating EntityManager in a Plain Java Class
  • Working With the EntityManager Interface
  • Transaction Basics
  • Summary
 

Chapter 16. Using MTOM for Binary Data

 
  • What is MTOM?
  • How MTOM Differs from Previous Approaches
  • Role of XML-binary Optimized Packaging (XOP)
  • Example of MTOM Messages
  • Enabling MTOM on a JAX-WS Service
  • Enabling MTOM on a Client
  • Summary
 

Chapter 17. Web Services Security (WS-Security)

 
  • The Challenges
  • Public Key Infrastructure (PKI)
  • Digital Signature
  • Certificates
  • Overview of Web Services Security
  • SOAP Message Security
  • Message Integrity
  • Message Confidentiality
  • Symmetric Encryption Example
  • Authentication Using Identity Token
  • Authentication
  • Transport Level Security
  • Audit Tracking
  • Identity Assertion Using SAML
  • SAML SOAP Example
 

Chapter 18. Interoperability of WS-Security

 
  • Interoperability Challenges
  • Recall WS-Security
  • Platform Run-Time Issues
  • Hints
  • Recall: WS-I
  • Basic Security Profile v1.0
  • Using Basic Security Profile 1.0
  • BSP 1.0 Details
  • BSP 1.0 Highlights
  • Summary
 

Chapter 19. WS-Addressing

 
  • What is WS-Addressing?
  • WS-Addressing and Long Running Services
  • Other Uses of WS-Addressing
  • WS-Addressing SOAP Header Elements
  • Example Client SOAP Request
  • Example Callback SOAP Request
  • Writing JAX-WS Clients to use WS-Addressing
  • Enabling Asynchronous Service Requests
  • Using WS-Addressing from the Client
  • Providing an AsyncHandler to Handle Callbacks
  • WS-Addressing Headers in SOAP Messages
  • WS-Addressing Sequence of Events
  • Asynchronous "Polling"
  • Security and Firewall Issues
  • Summary
 

Chapter 20. WS-ReliableMessaging

 
  • The Problem with HTTP
  • Enter WS-ReliableMessaging
  • When to Use Reliable Messaging?
  • How Does WS-RM Work?
  • Importance of Persistence
  • The Problem With Firewall
  • How Does WS-MakeConnection Work?
  • Using WS-MakeConnection
  • Summary
 

Chapter 21. Web Services Handlers

 
  • Handlers
  • Basic Handler Behavior
  • Basic Steps
  • JBoss Note
  • Handler Classes
  • LogicalHandlers
  • Protocol Handlers
  • Sample Handler
  • Getting Message Details
  • Inbound and Outbound
  • Handler Configuration File
  • Sampler Handler.xml
  • Specify the Handler Chain
  • Sample: Using A Handler
  • Executing
  • Summary
 

Chapter 22. Best Practices

 
  • Architecture Best Practices
  • Data Format Best Practices
  • Security Best Practices
  • Programming Model Best Practices
  • Summary