Zoom Outline PDF View  or  Email Back to Schedule for Iowa


AXIS2 - Java Web Services




SUMMARY:   Apache Axis2 is an implementation of the Simple Object Access Protocol (SOAP).
Axis2 has a modular and flexible message handling pipeline. This course focuses on the details of message handling and providing clear hooks for implementations of associated Web Services standards and protocols.

AUDIENCE:   Developers with some understanding of web services technologies and Service Oriented Architecture concepts.

PREREQUISITES:   To benefit from this Axis2 training, students should have a proficiency in Java and XML, as well as a basic knowledge of: SOAP, WSDL, Web Services, Service Oriented Architecture. General understanding of Web servers and some knowledge of TomCat and Spring.

DURATION:   5 days.

OBJECTIVES:   At the end of this course, students will be able to:
  • Understand SOAP, WSDL, and WS-Addressing.
  • Understand Service Oriented Architecture and how to build one using Axis2 and Java.
  • Better understand Web Services security and reliability.
  • Install and configure Apache Axis2.
  • Create and consume Web Services.
  • Generate Services and Clients using command line and IDE tools.
  • Make interactions secure and reliable.
  • Understand Axis2 architecture.
  • Understand all components/features of Axis2: AXIOM, Handlers, Phases, Policy, contexts.
  • Use Axis2 Ant tasks and IDE plug-ins.
  • Do Test Driven Development of Axis2 applications.

COURSE CONTENT:  
  1. Course Overview
  2. Recap on SOA and SOAP
    • SOA aims
    • Service overview
    • Loose coupling
    • SOAP 1.1, SOAP 1.2
    • Examples of SOAP messages
    • Message exchange patterns
    • Use a web-based tool to send and receive SOAP messages
  3. Introduction to Axis2
    • Overview
    • Aims
    • Top level components and flows
    • Demonstration
    • Repository
    • Install, start-up and test Axis2
    • Explore repository, services, modules, axis2.xml
    • Web client behavior
  4. Introduction to WS-Addressing
    • Why WS-A?
    • Asynchronous model
    • Endpoint References
    • Reference Parameters
  5. Creating services with Axis2
    • Deploying Java components
    • XML-based services vs. Bound services
    • Creating a service with Axis2, testing it
    • Command-line tooling
  6. Asynchronous Web Services
    • Reply-To
    • HTTP 202
    • Tracing an asynchronous interaction using HTTPTracer
  7. WSDL
    • WSDL 1.1 vs WSDL2
    • tools for creating and reading WSDL
    • Contract first development
    • Lab Exercise * Create a WSDL
  8. Building a web service contract first
    • Options
    • POJO development
  9. Creating Stubs and Skeletons
    • Generating Clients
  10. Building an end-to-end service from WSDL
    • Axis Data Binding
      • Intro to ADB
      • ADB options
      • XSD2Java
      • Alternatives to ABD * using XMLBeans
      • Exploring ADB
      • Using XSD2Java
      • Single class versus multi-class mapping
    • AXIOM
      • Looking at AXIOM and STaX
      • Detailed examples
      • Building XML structures dynamically
      • Creating and parsing XML using AXIOM
    • Dynamic clients
      • Using the ServiceClient API
      • Lab Exercise * calling services using AXIOM and ServiceClient
    • Tooling
      • Using Axis2 in Eclipse
      • Ant Build scripts
      • Using Axis2 in a Unit test environment
      • Using the Eclise plugin
      • Creating Unit tests
      • Spring/Tomcat integration
    • REST
      • REST arguments and positioning
      • Using XML/HTTP in a POST
      • The WSDL2.0 GET binding
      • Using Axis2 with GET and POST
    • MTOM - building and using binary attachments with Axis2
      • Build a binary service.
      • Trace with/without optimization.
      • Calculate the size of attachment to optimize
    • Understanding Sessions with Axis2
      • Using ServiceGroups and Axis2 context structure
      • EPR sessions vs HTTP Sessions
      • Create a stateful service
    • More internals of Axis2
      • Modules, phases, handlers
      • ClassLoader Hierarchy
      • Description and Context hierarchies
      • Building and testing a simple Logging Module
    • Advanced Web Services
      • Overview of the full WS-platform
    • Introduction to WS Security
      • Authentication
      • Signature
      • Encryption
      • Efficiency of WSS vs HTTPS
      • Mixing HTTPS and WSS
      • Securing a Web Service with WSS
      • 4J Tracing flows
    • Introduction to WS Reliable Messaging
      • Simple flows
      • Reliable WS with Sandesha22
      • Tracing flows
    • Introduction to WS-Policy and MetadataExchange
      • Why Policy
      • Policy overview and Policy Asserion Languages
      • How Policy fits into Axis2
      • Policy driven RM client
    • Other options
      • Tradeoffs / Best Practices
      • Interoperability issues
      • Production deployment issues / tips
      • Remote Procedure Call support
    KW/08

    © 2007 Verhoef Training, Inc.

    Schedule Dates

    Course offered as
    Inhouse or Public

    Date Location State














    Copyright © 2007 - Verhoef Group of Companies - All Rights Reserved