Your SlideShare is downloading. ×
Axis2, middleware for next generation web services
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Axis2, middleware for next generation web services


Published on

Axis2 ICWS 2006 Paper at Chicago

Axis2 ICWS 2006 Paper at Chicago

Published in: Technology, Education

  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide
  • Transcript

    • 1. Axis2, Middleware for Next Generation Web Services Srinath Perera
    • 2. Next 20 Minutes
      • Why Axis2?
      • What does it have?
      • Architecture
      • Core Concepts
        • XML processing
        • Extensibility
        • Messaging
      • Conclusion
    • 3. Why Axis2?
      • Web Services has changed, so are the values and expectations from WS Middleware
        • Better support for Messaging, Asynchronous interactions
        • Performance, Need for better XML processing
        • Better support for WS-* specifications
        • New specs, and changes to specs
        • (Better or for worse)
    • 4. What does it have?
      • Better XML processing model
      • Powerful messaging support
      • Seamless integration with WS-* implementations – WS-Addressing, WS-Security, WS-RM ….
      • Archive based Deployment
      • Close integration with Policy
      • HTTP, TCP, SMTP and JMS transports
      • REST, MTOM, WS-Policy …
      • Pluggable data Binding
      • WSDL based Code Generation
    • 5. Architecture 10,000 foot view
    • 6. XML processing Model
      • Major decider of performance
      • Expectations
        • Better performance, Streaming access to the Soap Message
        • Move back and forth
        • Easy accesses to the Soap Message, in other words Tree like (DOM like) representation
    • 7. How to tackle XML Processing?
      • Use of XML streaming API
      • Virtual XML elements, that provide familiar interface to user
      • Underline implementation based on differed/lazy parsing (Data is read as late as possible)
      • Switching back to the pull parser
      • Use cases
        • Streaming at data binding
        • Pass result to another Web Service
        • (Workflows)
    • 8. Extensibility
      • Support for security, reliability, transactions, addressing ….
      • Axis1 approach, Handler architecture
    • 9. Need bit more than Handlers
      • Simpler deployment
      • Automatic configuration e.g. Security
      • What if two or more Handlers co-exists? E.g. Security and Reliable Messaging
      • Operation Injection - e.g. RM, WS-RF, WS-Sec Conversation
      • Managing Handlers automatically and transparently based on Policy
    • 10. Axis2 Modules for extensibility
      • Module = Handler(s), + ordering rules + Initialization logic + Operations
      • Archive based deployment, just copy it to Axis2 repository.
      • Available modules vs Engaged modules
      • WS-Policy based engagement and automatic configuration
      • Possibility of automatically adapting services with (dynamic/static) policy negotiation
    • 11. Messaging
      • Messaging System addresses three issues
        • Complex message groupings and correlation
        • Blocking-Non Blocking behavior of Client /Server API
        • Synchronous and Asynchronous behavior of transports
      • Supports for following cases
        • Request response, non-blocking synchronous
        • Request response, non-blocking asynchronous
        • Request response, blocking synchronous
        • Request response, blocking asynchronous
        • One way
    • 12. Messaging in Axis2
      • Two Pipes, IN and OUT
      • Composing pipes at the Client (MEP clients) and Server (Message Receiver) to yield different MEPS
    • 13. Messaging (Continued)
      • Three Properties (non-blocking, MEP, Sync-Async) are Handled in Operation Clients and Message receivers
      • Switch between the different modes by simply setting client API parameters
      • If you are a Geek, you may even add new Operation clients/ Message Receivers
        • e.g. Pub-Sub use case
    • 14. Architecture (Revisited)
    • 15. Summery
      • We discussed rationale for Axis2, and brief looked at the architecture
      • We discuss three main topics, XML Processing, Extending SOAP Processing Model and Messaging
      • For more information
        • Official Site
        • Mailing List