Java ile Web Servisleri
Kurs Dili: Türkçe/İngilizce
Süre: 3 gün
Kurs İçeriği (Trivera kurs kataloğu)
Session 1: Introduction to Web Services in SOA
Lesson: Introduction to Web Services
- Define Web Services
- Look at Web Service from an Business and Architectural perspective
- Look at Web Service from a Technical Architectural perspective
- List benefits of using Web Services for the SOA
- Discuss the maturity of Web Services
- List criteria when and where and to use Web Services in your Archiecture
Lesson: Web Services technologies
- List different types of applications of Web Services
- Layout the Web Services technologies: technologies for meta data, messaging, transactions and process, presentation, security and management
- List important organizations, companies and bodies involved with Web Services
- Introduce SOAP
- Understand the role of WSDL
- Understand the significance of the WSDL document
- Understand the role of UDDI
- Understand different ways of using UDDI is used
- Discuss the ESB (Enterprise Service Bus) and Web Services
Session 2: SOAP and SAAJ
Lesson: Overview of the SOAP Recommendation
- Understand the structure of the SOAP1.2 specification
- Understand the SOAP1.2 terminology
- Understand the different parts that make up the specification
- Explain the SOAP Messaging Framework
- The anatomy of a SOAP message
- Understand SOAP Faults
- Understand the structure of a SOAP Faults
- Understand the use of headers with SOAP Faults
Lesson: SOAP Processing
- Understand the The SOAP Processing Model
- Explain the use of headers in vertical extensibility
- Understand the use of the header for extensibility (role attribute)
- Explain the use of the mustUnderstand flag
- Explain the use of Intermediaries
- Understand a SOAP Module
- Understand the concept of Message Exchange Patterns (MEP)
- Understand the SOAP HTTP Binding
- Introduce WSIAP and SOAP Messages with Attachments (SwA)
- Introduce MTOM and XOP
- Understand differences between SOAP1.2 and SOAP1.1
Lesson: SAAJ 1.3 Overview
- Understand the core of SAAJ
- Understand the core classes that make up SAAJ
- Understand the relationship between SOAP message elements and SAAJ classes
- For each class understand its use
- Be able to send SOAP messages using SAAJ
Session 3: WSDL
Lesson: Comprehensive overview of WSDL
- Understand the structure of a WSDL document
- Understand the relationships
- Understand how to define Services compliant with the WS-I Basic Profile
- Understand the SOAP Binding
- Understand how to define RPC style web services
- Understand how to define Documented oriented web services
- Using the Import element to split the WSDL into contract and implementation
- Understand the role of WSDL in the SOA and a SOP (Service Oriented Process)
- List the different transmission primitives (aka message exchange patterns)
- List different WSDL Extensions
- List changes made for WSDL2.0
Session 4: Introduction to JAXB 2.x
Lesson: JAXB Overview
- Introduce JAXB 2.x
- List the goals of JAXB 2
- Explain the architecture of JAXB
- Introduce the XML to Java mapping
- Introduce the concept of a Value Class
- Explain handling of naming differences between XML and Java
- Introduce the ObjectFactory
- Introduce JAXB Binding Declarations
- Explain how these binding declarations are provided
- Introduce key JAXB annotations
- Introduce the core API of JAXB and how to configure the JAXB implementation
- Understand and use the JAXBContext class
- Understand and use the core functionality of the Marshaller and Unmarshaller
- List possible input sources and sinks
Lesson: XML to Java binding
- Understand how Simple types are mapped to Java
- Understand how simple types derived by list and union mapped
- Understand the difference between indexed and list collection properties
- Use binding declarations to customize this bindings
- Understand how simple types with enumeration facet(s) are bound to Java
- Use binding declarations to configure enum binding
- Understand how complex types are bound to Java (Value Classes)
- Understand the relation between value classes and elements
- Understand how complex types with simple and complex content models are mapped
- Understand how model groups are mapped (sequence, choice etc)
- Understand how wildcard particles are mapped
- Understand how element particles are mapped
- Understand when a general content property is used to bind a complex type
- Understand where and how collection of element types is used
- Use binding declarations to customize the binding of complex types to Java
- Understand different ways of binding elements to Java
- Understand the JAXBElement (its rational, importance and usage)
- Understand the relation with its type (e.g., with value classes)
- Use binding declarations to customize the binding of element declarations to Java
Lesson: Java to XML binding
- Provide the default mapping of Java to XML
- Explain all JAXB annotations to configure the Java to XML binding
- Explain different package level annotations
- Explain different class level annotations
- Explain different property level annotations
Session 5: JAX-WS
Lesson: JAX-WS Overview
- Understand what JAX-WS is
- Understand the JAX-WS Architecture in detail
- Understand the JAX-WS 2.1 Specification
- Understand the role of WSDL
- Discuss bottom-up versus top-down service realization
- Overview of the WSDL and Java Mapping and vice versa
- Introduce the two APIs (client/service side)
Lesson: Building a JAX-WS Client
- Understand the static service use
- Understand how to build a JAX-WS client using a given WSDL
- Understand the internal sequence of service invocation (OSD)
- Understand dynamic service use
Lesson: Service realization using JAX-WS
- Recap the two models: bottom-up and top-down
- Understand the dynamic programming model
- Understand the different Provider<T> implementations
- Understand the static programming model
- Understand the developments steps for bottom-up
- Understand the developments steps for top-down
- Customize Java to WSDL mapping using JAX-WS and Web Services Metadata (JSR 181) annotations
- Appreciate the use of JAXB 2.1 annotations (JSR 222)
- Configure the SOAP Binding
- Understand JAX-WS exception handling
- Add Service Endpoint exception and map these to SOAP faults
- Use the SOAP 1.1 HTTP Binding
- Add support for MTOM/XOP
- Understand lightweight Endpoint and Servlet container deployment
Lesson: Advanced JAX-WS
- Understand the Handler Framework
- Understand the difference between logical and protocol handlers
- Understand the API and accessible classes for each handler type
- Understand the life-cycle of a handler
- Using the Catalog Facility
- Implement handlers that operate on header elements
- Understand different ways of configuring handler chains
- Understand how to manage state in handlers (e.g, MessageContext)
- Understand the structure of an OASIS 1.1 Catalog file