Curso Programming SOAP Web Services With JAX-WS
40hVisão Geral
Este curso ensinará aos alunos como desenvolver aplicativos de consumidor e provedor de Serviços da Web SOAP para a plataforma WebSphere Application Server 8.0. Ele explicará a teoria por trás do esquema XML, WSDL e SOAP. Ele também ensinará aos alunos várias especificações Java que cobrem o desenvolvimento de Web Services (como JAX-WS e JAXB).
Objetivo
Após concluir o Curso Programming SOAP Web Services With JAX-WS, você será capaz de:
- Projete esquema XML e WSDL.
- Diga a diferença entre os estilos SOAP (literal de documento, literal de RPC etc.)
- Implemente um Web Service usando RAD 8.0 e WebSphere 8.0.
- Escreva um cliente Web Services usando especificações Java padrão.
- Serviços web seguros.
- Entenda os problemas de interoperabilidade, especialmente com a plataforma .NET.
- Utilize recursos avançados de serviço da Web para mensagens e anexos confiáveis
Publico Alvo
- Este curso foi desenvolvido para desenvolvedores Java EE que desejam aprender como construir uma solução baseada em SOAP Web Services.
Pre-Requisitos
- Os alunos já devem ter uma compreensão da programação Java.
Informações Gerais
Carga Horária: 40h
- Se noturno este curso é
ministrado de Segunda-feira à sexta-feira, das 19h às 23h
- Se aos sábados este curso é
ministrado das 9h às 18h
- Se in-company por favor
fazer contato para mais detalhes.
Formato de
entrega:
- 100% on-line ao vivo, via
Microsoft Teams na presença de um instrutor/consultor ativo no mercado.
- Nota: não é curso
gravado.
Lab:
- Laboratório + Exercícios
práticos
Materiais
Português | InglêsConteúdo Programatico
Introduction To Web Services
- Defining Services
- Service Communication Analogy
- SOA: Runtime Implementation
- Enterprise Assets as Services
- Typical Development Workflow
- Advantages of Web Services
- Web Service Business Models
- 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
Basic Xml Schemas
- What is XML Schema ?
- Goals of Schema
- Converting DTDs to Schema
- The equivalent schema
- Sample instance document
- Documents Needed
- XML Schema Namespaces
- Link Documents to Schemas
- Inline element declarations
- XSchema Data Types
- XSchema Type Definitions
- XSchema Simple Data Types
- Primitive Data Types
- Simple Types
- Facet ? Restrictions on Element Content
- Using the Facet
- More Samples
- Define Simple Element Type
- Element Declaration
- Element Occurrence Indicators
- Complex Type
- Attribute Declaration
- Attribute Declarations
- Occurrence of Attributes
- Value Constraints on Attributes
- Sequence Element
- Element Choices
- Express any order
- Annotations
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>
The Java Architecture for Xml Binding (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
Introduction to JAX-WS
- What is JAX-WS?
- Advantages of JAX-WS
- 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
Web Services Description Language (WSDL)
- WSDL Overview
- WSDL Syntax Overview
- <definitions>
- <import>
- <types>
- <message>
- <portType>
- <operation>
- <binding>
- <service>
Simple Object Access Protocol (SOAP)
- SOAP Overview
- 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
Web Services Interoperability (WS-I)
- WS-I Tools
- Profiles
- WS-I Messaging
- Messaging Highlights
- Service Description
- Service Description Highlights
- Service Publication/Discovery
- Security
- .NET Interoperability
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
- Service Provider Annotation
- Web Service Provider Example
- Service Provider Annotations
- JAX-WS Clients
- Synchronous and Asynchronous Calls
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
Building an EJB Based Web Service
- Why Use EJB as Service Implementation?
- Implementing EJB Web Service
- Using a Service Endpoint Interface (SEI)
Error Handling
- Fault
- Designing Faults
- System Problems
- Business Rule Violation
Managed Web Service Client Binding
- Using a Packaged WSDL
- Managed Web Service Clients
- Injecting the Service Port Directly
- Web Service Administration Tasks
- Configure Endpoint URL in Consumer Side
- Configure Endpoint URL in Provider Side
- Publishing WSDL File
- Working with Policy Sets
- Stopping a Service Listener
WS-Addressing
- What is WS-Addressing?
- WS-Addressing and Long Running Services
- Other Uses of WS-Addressing
- WS-Addressing SOAP Header Elements
- 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"
- Endpoint References
- Associating Actions with WSDL Operations
- Faults
- Security and Firewall Issues
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
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
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
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
WS-Trust and WS-Federation
- Review of WS-Security Authentication Model
- How WS-Trust Works
- WS-Federation
- Federation Metadata Example
- Requesting a Token
- Dynamic Conversation
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
WS-Notification
- The Problem with One-to-One Messaging
- Publish-Subscribe Messaging to the Rescue
- Enter WS-Notification
- When to Use WS-Notification
- WS-Notification Terminology
- Push and Pull Consumers
- Push Consumer
- Pull Consumer
- Advantages of Using the Pull Consumer