SlideShare a Scribd company logo
Oracle Service Bus
<Insert Picture Here>   Essential Concepts
About This Course

• Discuss several SOA requirements that can be
  addressed using a Service Bus
• Explain the relationships between WSDL, XPath,
  XQuery, and ALSB
• List some of the capabilities of an OSB Proxy Service
• Describe the process of how OSB is configured and
  managed
Target Audience

• Anyone evaluating Service Bus technologies
• SOA project team members:
  •   Project Managers
  •   Enterprise and Project Architects
  •   Service Developers
  •   System Administrators


• Prior knowledge of fundamental
  SOA concepts recommended
Roadmap

1. Enterprise Service Bus
  •   Service Enablement
  •   Service Orchestration
  •   OSB Architecture
2. Service Bus Technologies
3. Proxy Service Development
4. Service Management and Monitoring
Why a Service Bus?

• The Point-to-Point problem


Application          Service                    Database


                     Service

Application                                       EJB

                     Service          Service


Application          Service          Service     SAP

              SOAP             SOAP
Location Transparency

• Isolate from changes to service location


                        Service Bus                HostA
  New Hire   SOAP                     SOAP
                                             Initialize Benefits
  Process                Route to                  Service
                          HostB

                                                   HostB
                                             Initialize Benefits
                                                   Service
Backwards Compatibility

• Isolate from changes to service contract/interface

                          Service Bus
             SOAP                       SOAP
 Customer                                       Process Order
  Portal                  Transform                Service
              <1.0>
                          Message

              <2.0>                                    1.0
 CSR App                                               2.0
Service Enablement

• Allow multiple protocols/messages to participate in a
  SOA
                          Service Bus
                SOAP                    JMS
   Expense
                          Transform            Payroll Service
Reimbursement
   Process                              FTP
                          Transform            Submit Expense
                                                Report Service
  Inventory
                                        SOAP
 Management     JMS       Transform             Check Order
     App                                       Status Service
Dynamic Routing

• Use business rules to determine destination service


                          Service Bus


                                                     New Employee
             SOAP                                       Service
 HR Portal           Title =
                                              SOAP
                    Manger?
                                  Transform          New Manager
                                                       Service
Message Enrichment

• Update message using the response from another
  service
                                                     ...
                                                     <Customer
                                                     History>
                                                     ...

                        Service Bus

Insurance           Call       Transform                 Rate Quote
  Portal           Service     Message                    Service




                                       Get Customer
                                       History Service
Service Orchestration

• Compose new services from existing ones


                       Service Bus
                                         SOAP        Account
                                                Validation Service
                               1
  Purchase   SOAP   Validate                       Check Price
   Order             Order     2     3               Service
  Process           Service
                               4                Check Inventory
                                                   Service
OSB to the Rescue
                      Oracle Service Bus
        Service             Service           Service Security
       Monitoring         Management
                                                Authentication
       Dashboard           Discovery
                                                Authorization
       SLA Alerts        Change Mgmt.
                                                     Message
       Reporting          Import/Export              Security

                        Message Broker

     Content Based      Dynamic            Error        Multiple
        Routing      Transformations      Handling     Protocols


                     Oracle WebLogic Server

                       Oracle JRockit JVM
Service Bus Quiz
Roadmap

1. Enterprise Service Bus
2. Service Bus Technologies
  •   Web Service Fundamentals
  •   XML Fundamentals
3. Proxy Service Development
4. Service Management and Monitoring
Web Service Description Language
 (WSDL)
• Is an XML document
• Generated by tools
• Acts as a Web Service contract:
  •   Elements                Employee           getEmployeeDept()
  •   Operations
                             Department             getAllDepts()
  •   Bindings
  •   Ports ("endpoints")

                                    SOAPEmployeeService



                            http://services.bea.com/employeeservice
Simple Object Access Protocol (SOAP)

•   Is a remote function protocol based on XML
•   Used to invoke Web Services
•   Wraps messages in an envelope protocol
•   Supports headers and attachments
                                         Communications Envelope
                                         (HTTP, SMTP, FTP, etc.)
                         Client
                       Application           SOAP Envelope
                                                 <Headers/>

                                                  </Body>

                        Service
                                            SOAP Attachments
Universal Description, Discovery, and
 Integration (UDDI)
• Metadata structure to classify and catalog services
• SOAP interface to communicate with a service
  registry ("digital telephone book")



                        Publish Service    Service Registry
                        Discover Service
         Service                            WSDL + metadata
      Development &
     Management Tools        SOAP           WSDL + metadata
XML Schema
•   Defines the structure of other XML documents
•   Is itself an XML document
•   Allows for faster message validation and processing
•   Has a unique ID called a namespace
         <xs:schema targetNamespace="http://schemas.bea.com/purchase"
             xmlns="http://schemas.bea.com/purchase"
             xmlns:po="http://schemas.bea.com/purchase"
             xmlns:xs="http://www.w3.org/2001/XMLSchema">

           <xs:element name="PurchaseOrder">
             <xs:complexType>
               <xs:sequence>
                 <xs:element name="Location" type="xs:string"/>
                 <xs:element name="Items" type="ItemList"/>
               </xs:sequence>
             </xs:complexType>
           </xs:element>
           ...
         </schema>

                                                                   1
                                                                   011
XPath
• Is a standard XML expression language
• Used to identify or locate portions of an XML
  document
  • Attributes
  • Elements
                                 <PurchaseOrder>
 //PurchaseOrder/Item/@line        <Item line="1">
                                     <price>49.99</price>
                                     <quantity>3</quantity>
                                   </Item>
                                   <Item line="2">
 //PurchaseOrder/Item/price          <price>9.49</price>
                                     <quantity>1</quantity>
                                   </Item>
                                 </PurchaseOrder>         1
                                                         011
XQuery
 • Structured language for working with XML
   documents:
    •   Strongly typed
    •   Variables, operators, conditions, loops
    •   Library and custom functions
    •   Relational database queries
 • Supports XPath

return <items>
                                                  <items>
for $item in //PurchaseOrder/Item                   <price>49.99</price>
 order by $item/title                               <price>9.49</price>
 return <price>{$item/price}<price>               </items>

return </items>
Extensible Stylesheet Language
 Transformations (XSLT)
• Alternative to XQuery for XML transformations:
  • Loosely typed scripting language
  • Does not require XML Schema
  • More tolerant of malformed XML
• Supports XPath
  <xsl:stylesheet>

    <xsl:template match="//Item">         <line id="1">
      <line id="{@line}">                   49.99
        <xsl:value-of select="price"/>    </line>
      </line>                             <line id="2">
    </xsl:template>                         9.49
                                          </line>
  </xsl:stylesheet>
Service Bus Technologies Quiz
Roadmap

1. Enterprise Service Bus
2. Service Bus Technologies
3. Proxy Service Development
  •   Proxy Architecture
  •   Workspace
  •   Actions
  •   Transformations
4. Service Management and Monitoring
Proxy Services
                                  Service Bus                 Outbound

                         Proxy Service             Business           Service
           Inbound                                  Service          Producer
 Service                    Pipeline               Business           Service
Consumer                                            Service          Producer
                            Pipeline               Business           Service
                                                    Service          Producer




                     Workspace           Console
Supported Protocols
• Protocols
   •   SOAP over HTTP/JMS
   •   HTTP/S
   •   JMS
   •   RMI/IIOP (EJB)                                            XML
   •   Tuxedo, MQSeries
   •   Email (SMTP/POP/IMAP)                               SOAP over HTTP
   •   FTP/Secure FTP
   •   Custom
   •   Oracle Adapters (framework + Adapters post 10gR3)
                                                                 XML
• Message Formats
   • XML                                                        JMS
   • Text
   • Custom Binary (EDI, etc.)
                                                                 Text
• SmartConnect Adapters
   •   SAP                                                     SMTP
   •   PeopleSoft
   •   Siebel
   •   Oracle
   •   SWIFT
Workspace
• Eclipse-based IDE
  •   Define XML Schemas, WSDLs, and transformations
  •   Configure business and proxy services
  •   Track dependencies
  •   Deploy to OSB server and test


                               Workspace

                 Beehive    OSB         ALRR    XQuery

                            Eclipse Web Tools

                  J2EE      XML         WSDL    HTML

                             Eclipse Platform
OSB Perspective


            Explorer
                                          Palette
                       Editor




                                DRAG



                                       Properties
  Outline
Message Flow

•   Conditions/branches
•   Routing destinations
•   Request/response Pipelines
•   Actions:
    •   Update/replace/delete message contents
    •   Update message headers
    •   Call another service                Action
    •   Raise error on client
    •   Generate a report or alert
    •   Invoke a Java class or EJB
• Error handlers                                     Pipeline
Transformations

• XML to XML (XQuery or XSLT)
• XML to Text/Binary (XQuery)
• Binary to Binary (MFL)
Dependency Tracking

• Select an artifact
• View References
Demonstration: Create a Proxy Service

       Proxy Service
       approveLoan()

                               Business         ProcessLoan
  > $10,000?
                N               Service         approveLoan()

       Y       Transform       Business       ProcessLargeLoan
               Message          Service         approveLoan()




                            Please enable
                           browser pop-ups!
Proxy Service Development Quiz
Roadmap

1.   Enterprise Service Bus
2.   Service Bus Technologies
3.   Proxy Service Development
4.   Service Management and Monitoring
     •   OSB Console
     •   Service Level Agreements
     •   OSB Security
     •   Advanced Routing
     •   Product Interoperability
OSB Console
• Full Pipeline Design Capabilities
  Additionally:
  •   Configure proxy service security
  •   Monitor service health
  •   Generate reports
                                                          Edit Message
  •   Define SLAs that trigger alerts                          Flow
  •   Synchronize with a UDDI registry




                                         Monitor Alerts
Configuration Management

• Change Center
  •   Atomic sessions
  •   View & resolve conflicts
  •   Undo tasks
  •   Audit changes
• Import/Export
  • Change propagation
  • Workspace synchronization
• Test Console
  • Validate changes
Monitoring Dashboard

• Gauge the current health of:
  • OSB servers
  • Proxy services/operations
  • Message flow components
• View custom reports
• Metrics include:
  •   Response time
  •   Message throughput
  •   Error count
  •   Alert count
  •   Schema violations
Alerts

• Service Level Agreements (SLAs)
  • Guarantee a certain level of performance and/or quality
  • Trigger reports and Alerts
     • Email
     • SNMP
     • JMS
• Rules based on:
  •   Response time
  •   Message count
  •   Success/failure ratio
  •   Schema violations
  •   Security violations
OSB Security

                                                    Service
• Transport security (HTTP, JMS,                   Consumer

  etc.)                                    WS-Security
  • Basic authentication                     SAML

  • SSL                                              Proxy
                                   Authorization
• SOAP message security                             Service

  • WS-Security                     Credential
                                    Mapping        Business
  • WS-Policy                                       Service
  • SAML
• Credential mapping                 SOAP over HTTPS

• Role-based authorization                          Service
                                                   Producer
• Delegated administration
Advanced Mediation Policies

 • Business Service Load Balancing & Failover
                                         Service Producer Node1

           Proxy          Business
                                         Service Producer Node2
          Service          Service

                                         Service Producer Node3

• Throttling

                    Message Buffer
       Proxy                         Business        Legacy
      Service                         Service        Service
Demonstration: Manage a Proxy Service

   Proxy Service
   approveLoan()

                       Business             ProcessLoan
  > $10,000?
                   N    Service             approveLoan()

         Y             Business         ProcessLargeLoan
                        Service           approveLoan()


    Response
   Time > 5ms?

  SMTP

      Alert               Please enable
                         browser pop-ups!
Product Interoperability

                          Console
                                                          BPM
Synchronize
                    Configure
                     Monitor
                                                         Tuxedo


        Service         Service Bus
       Repository
                                                     BPEL PM

   Discover         Configure
    Design
                                                          ODI
   Publish

                        Workspace
                                      Build Services &
                                       Applications
Have Licensing or technical questions?

•   SOA FAQ
•   OSB FAQ
•   OESB FAQ
•   All linked from their respective ias.us pages
    (start at http://soa.us.oracle.com )

More Related Content

What's hot (20)

PDF
XML-RPC (XML Remote Procedure Call)
Peter R. Egli
 
PPTX
Simple Object Access Protocol
Saatviga Sudhahar
 
PPT
jQuery Ajax
Anand Kumar Rajana
 
PPTX
Trace route
NetProtocol Xpert
 
PDF
IT2255 Web Essentials - Unit IV Server-Side Processing and Scripting - PHP.pdf
pkaviya
 
PPTX
Wap wml
ishmecse13
 
PPTX
Application layer protocols
FabMinds
 
ODP
Spring User Guide
Muthuselvam RS
 
ODP
Json Tutorial
Napendra Singh
 
PPT
TCP Model
manojkum22
 
PPTX
Imap(internet massege access protocaols)
shashikant pabari
 
PDF
Evolution of Ethernet Infographic
Eamon McCarthy Earls
 
PPTX
Web technology Unit-I Part D - message format
SSN College of Engineering, Kalavakkam
 
PPTX
Yes, i can
Neeraj Kumar
 
PPT
RESTful services
gouthamrv
 
PPTX
SOAP - Simple Object Access Protocol
Anushka Patil
 
PDF
Enterprise java unit-1_chapter-1
sandeep54552
 
PDF
2 TomcatによるWebアプリケーションサーバ構築 第1章 Tomcatのインストールと設定
Enpel
 
PPT
Android software stack
Soba Arjun
 
XML-RPC (XML Remote Procedure Call)
Peter R. Egli
 
Simple Object Access Protocol
Saatviga Sudhahar
 
jQuery Ajax
Anand Kumar Rajana
 
Trace route
NetProtocol Xpert
 
IT2255 Web Essentials - Unit IV Server-Side Processing and Scripting - PHP.pdf
pkaviya
 
Wap wml
ishmecse13
 
Application layer protocols
FabMinds
 
Spring User Guide
Muthuselvam RS
 
Json Tutorial
Napendra Singh
 
TCP Model
manojkum22
 
Imap(internet massege access protocaols)
shashikant pabari
 
Evolution of Ethernet Infographic
Eamon McCarthy Earls
 
Web technology Unit-I Part D - message format
SSN College of Engineering, Kalavakkam
 
Yes, i can
Neeraj Kumar
 
RESTful services
gouthamrv
 
SOAP - Simple Object Access Protocol
Anushka Patil
 
Enterprise java unit-1_chapter-1
sandeep54552
 
2 TomcatによるWebアプリケーションサーバ構築 第1章 Tomcatのインストールと設定
Enpel
 
Android software stack
Soba Arjun
 

Viewers also liked (9)

PDF
Oracle Service Bus (OSB) for the Busy IT Professonial
Frank Munz
 
PDF
Osb student guide
Vibhor Rastogi
 
PPTX
Where and when to use the Oracle Service Bus (OSB)
Guido Schmutz
 
PDF
Oracle OSB Tutorial 1
Rakesh Gujjarlapudi
 
PPTX
Componenets of osb12c
TUSHAR VARSHNEY
 
PPTX
Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012
Jan van Zoggel
 
PPTX
Performance Management in Oracle 12c
Alfredo Krieg
 
PDF
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
Frank Munz
 
Oracle Service Bus (OSB) for the Busy IT Professonial
Frank Munz
 
Osb student guide
Vibhor Rastogi
 
Where and when to use the Oracle Service Bus (OSB)
Guido Schmutz
 
Oracle OSB Tutorial 1
Rakesh Gujjarlapudi
 
Componenets of osb12c
TUSHAR VARSHNEY
 
Where to use the Oracle Service Bus @ OBUG Connect 22-04-2012
Jan van Zoggel
 
Performance Management in Oracle 12c
Alfredo Krieg
 
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
Frank Munz
 
Ad

Similar to oracle-osb (20)

PDF
Use of SOA and Web Services Technologies for EA Migration - Lessons Learned o...
Nathaniel Palmer
 
PPTX
Enterprise Service Bus Part 2
Return on Intelligence
 
PDF
Oracle SOA Suite Overview - Integration in a Service-Oriented World
OracleContractors
 
PDF
ESB and SOA
WSO2
 
PDF
Implementing advanced integration patterns with WSO2 ESB
WSO2
 
PPT
Enterprise Service Bus Part 1
Return on Intelligence
 
PDF
Delivering the Promise of SOA - Enterprise Integration Made Easy
WSO2
 
PDF
Layer 7 and Oracle -
CA API Management
 
PDF
OOW09 Integration Architecture EBS R12
jucaab
 
PPTX
Soa
subhaprasad79
 
PDF
Ebs soa con8716_pdf_8716_0001
jucaab
 
PPTX
Mike Taulty OData (NxtGen User Group UK)
ukdpe
 
PPTX
Web Services - Architecture and SOAP (part 1)
Martin Necasky
 
PDF
WSO2 ESB and SOA
WSO2
 
PDF
Web Services Orchestration with BPEL 2.0
Tammo van Lessen
 
PPT
Enterprise service bus(esb)
prksh89
 
PDF
What is Semantic Service provisioning
Josef Noll
 
PPTX
Concepts integrationandbiztalksoa andbpm
Sandro Pereira
 
Use of SOA and Web Services Technologies for EA Migration - Lessons Learned o...
Nathaniel Palmer
 
Enterprise Service Bus Part 2
Return on Intelligence
 
Oracle SOA Suite Overview - Integration in a Service-Oriented World
OracleContractors
 
ESB and SOA
WSO2
 
Implementing advanced integration patterns with WSO2 ESB
WSO2
 
Enterprise Service Bus Part 1
Return on Intelligence
 
Delivering the Promise of SOA - Enterprise Integration Made Easy
WSO2
 
Layer 7 and Oracle -
CA API Management
 
OOW09 Integration Architecture EBS R12
jucaab
 
Ebs soa con8716_pdf_8716_0001
jucaab
 
Mike Taulty OData (NxtGen User Group UK)
ukdpe
 
Web Services - Architecture and SOAP (part 1)
Martin Necasky
 
WSO2 ESB and SOA
WSO2
 
Web Services Orchestration with BPEL 2.0
Tammo van Lessen
 
Enterprise service bus(esb)
prksh89
 
What is Semantic Service provisioning
Josef Noll
 
Concepts integrationandbiztalksoa andbpm
Sandro Pereira
 
Ad

Recently uploaded (20)

PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
July Patch Tuesday
Ivanti
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
PPTX
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
July Patch Tuesday
Ivanti
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 

oracle-osb

  • 1. Oracle Service Bus <Insert Picture Here> Essential Concepts
  • 2. About This Course • Discuss several SOA requirements that can be addressed using a Service Bus • Explain the relationships between WSDL, XPath, XQuery, and ALSB • List some of the capabilities of an OSB Proxy Service • Describe the process of how OSB is configured and managed
  • 3. Target Audience • Anyone evaluating Service Bus technologies • SOA project team members: • Project Managers • Enterprise and Project Architects • Service Developers • System Administrators • Prior knowledge of fundamental SOA concepts recommended
  • 4. Roadmap 1. Enterprise Service Bus • Service Enablement • Service Orchestration • OSB Architecture 2. Service Bus Technologies 3. Proxy Service Development 4. Service Management and Monitoring
  • 5. Why a Service Bus? • The Point-to-Point problem Application Service Database Service Application EJB Service Service Application Service Service SAP SOAP SOAP
  • 6. Location Transparency • Isolate from changes to service location Service Bus HostA New Hire SOAP SOAP Initialize Benefits Process Route to Service HostB HostB Initialize Benefits Service
  • 7. Backwards Compatibility • Isolate from changes to service contract/interface Service Bus SOAP SOAP Customer Process Order Portal Transform Service <1.0> Message <2.0> 1.0 CSR App 2.0
  • 8. Service Enablement • Allow multiple protocols/messages to participate in a SOA Service Bus SOAP JMS Expense Transform Payroll Service Reimbursement Process FTP Transform Submit Expense Report Service Inventory SOAP Management JMS Transform Check Order App Status Service
  • 9. Dynamic Routing • Use business rules to determine destination service Service Bus New Employee SOAP Service HR Portal Title = SOAP Manger? Transform New Manager Service
  • 10. Message Enrichment • Update message using the response from another service ... <Customer History> ... Service Bus Insurance Call Transform Rate Quote Portal Service Message Service Get Customer History Service
  • 11. Service Orchestration • Compose new services from existing ones Service Bus SOAP Account Validation Service 1 Purchase SOAP Validate Check Price Order Order 2 3 Service Process Service 4 Check Inventory Service
  • 12. OSB to the Rescue Oracle Service Bus Service Service Service Security Monitoring Management Authentication Dashboard Discovery Authorization SLA Alerts Change Mgmt. Message Reporting Import/Export Security Message Broker Content Based Dynamic Error Multiple Routing Transformations Handling Protocols Oracle WebLogic Server Oracle JRockit JVM
  • 14. Roadmap 1. Enterprise Service Bus 2. Service Bus Technologies • Web Service Fundamentals • XML Fundamentals 3. Proxy Service Development 4. Service Management and Monitoring
  • 15. Web Service Description Language (WSDL) • Is an XML document • Generated by tools • Acts as a Web Service contract: • Elements Employee getEmployeeDept() • Operations Department getAllDepts() • Bindings • Ports ("endpoints") SOAPEmployeeService http://services.bea.com/employeeservice
  • 16. Simple Object Access Protocol (SOAP) • Is a remote function protocol based on XML • Used to invoke Web Services • Wraps messages in an envelope protocol • Supports headers and attachments Communications Envelope (HTTP, SMTP, FTP, etc.) Client Application SOAP Envelope <Headers/> </Body> Service SOAP Attachments
  • 17. Universal Description, Discovery, and Integration (UDDI) • Metadata structure to classify and catalog services • SOAP interface to communicate with a service registry ("digital telephone book") Publish Service Service Registry Discover Service Service WSDL + metadata Development & Management Tools SOAP WSDL + metadata
  • 18. XML Schema • Defines the structure of other XML documents • Is itself an XML document • Allows for faster message validation and processing • Has a unique ID called a namespace <xs:schema targetNamespace="http://schemas.bea.com/purchase" xmlns="http://schemas.bea.com/purchase" xmlns:po="http://schemas.bea.com/purchase" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="PurchaseOrder"> <xs:complexType> <xs:sequence> <xs:element name="Location" type="xs:string"/> <xs:element name="Items" type="ItemList"/> </xs:sequence> </xs:complexType> </xs:element> ... </schema> 1 011
  • 19. XPath • Is a standard XML expression language • Used to identify or locate portions of an XML document • Attributes • Elements <PurchaseOrder> //PurchaseOrder/Item/@line <Item line="1"> <price>49.99</price> <quantity>3</quantity> </Item> <Item line="2"> //PurchaseOrder/Item/price <price>9.49</price> <quantity>1</quantity> </Item> </PurchaseOrder> 1 011
  • 20. XQuery • Structured language for working with XML documents: • Strongly typed • Variables, operators, conditions, loops • Library and custom functions • Relational database queries • Supports XPath return <items> <items> for $item in //PurchaseOrder/Item <price>49.99</price> order by $item/title <price>9.49</price> return <price>{$item/price}<price> </items> return </items>
  • 21. Extensible Stylesheet Language Transformations (XSLT) • Alternative to XQuery for XML transformations: • Loosely typed scripting language • Does not require XML Schema • More tolerant of malformed XML • Supports XPath <xsl:stylesheet> <xsl:template match="//Item"> <line id="1"> <line id="{@line}"> 49.99 <xsl:value-of select="price"/> </line> </line> <line id="2"> </xsl:template> 9.49 </line> </xsl:stylesheet>
  • 23. Roadmap 1. Enterprise Service Bus 2. Service Bus Technologies 3. Proxy Service Development • Proxy Architecture • Workspace • Actions • Transformations 4. Service Management and Monitoring
  • 24. Proxy Services Service Bus Outbound Proxy Service Business Service Inbound Service Producer Service Pipeline Business Service Consumer Service Producer Pipeline Business Service Service Producer Workspace Console
  • 25. Supported Protocols • Protocols • SOAP over HTTP/JMS • HTTP/S • JMS • RMI/IIOP (EJB) XML • Tuxedo, MQSeries • Email (SMTP/POP/IMAP) SOAP over HTTP • FTP/Secure FTP • Custom • Oracle Adapters (framework + Adapters post 10gR3) XML • Message Formats • XML JMS • Text • Custom Binary (EDI, etc.) Text • SmartConnect Adapters • SAP SMTP • PeopleSoft • Siebel • Oracle • SWIFT
  • 26. Workspace • Eclipse-based IDE • Define XML Schemas, WSDLs, and transformations • Configure business and proxy services • Track dependencies • Deploy to OSB server and test Workspace Beehive OSB ALRR XQuery Eclipse Web Tools J2EE XML WSDL HTML Eclipse Platform
  • 27. OSB Perspective Explorer Palette Editor DRAG Properties Outline
  • 28. Message Flow • Conditions/branches • Routing destinations • Request/response Pipelines • Actions: • Update/replace/delete message contents • Update message headers • Call another service Action • Raise error on client • Generate a report or alert • Invoke a Java class or EJB • Error handlers Pipeline
  • 29. Transformations • XML to XML (XQuery or XSLT) • XML to Text/Binary (XQuery) • Binary to Binary (MFL)
  • 30. Dependency Tracking • Select an artifact • View References
  • 31. Demonstration: Create a Proxy Service Proxy Service approveLoan() Business ProcessLoan > $10,000? N Service approveLoan() Y Transform Business ProcessLargeLoan Message Service approveLoan() Please enable browser pop-ups!
  • 33. Roadmap 1. Enterprise Service Bus 2. Service Bus Technologies 3. Proxy Service Development 4. Service Management and Monitoring • OSB Console • Service Level Agreements • OSB Security • Advanced Routing • Product Interoperability
  • 34. OSB Console • Full Pipeline Design Capabilities Additionally: • Configure proxy service security • Monitor service health • Generate reports Edit Message • Define SLAs that trigger alerts Flow • Synchronize with a UDDI registry Monitor Alerts
  • 35. Configuration Management • Change Center • Atomic sessions • View & resolve conflicts • Undo tasks • Audit changes • Import/Export • Change propagation • Workspace synchronization • Test Console • Validate changes
  • 36. Monitoring Dashboard • Gauge the current health of: • OSB servers • Proxy services/operations • Message flow components • View custom reports • Metrics include: • Response time • Message throughput • Error count • Alert count • Schema violations
  • 37. Alerts • Service Level Agreements (SLAs) • Guarantee a certain level of performance and/or quality • Trigger reports and Alerts • Email • SNMP • JMS • Rules based on: • Response time • Message count • Success/failure ratio • Schema violations • Security violations
  • 38. OSB Security Service • Transport security (HTTP, JMS, Consumer etc.) WS-Security • Basic authentication SAML • SSL Proxy Authorization • SOAP message security Service • WS-Security Credential Mapping Business • WS-Policy Service • SAML • Credential mapping SOAP over HTTPS • Role-based authorization Service Producer • Delegated administration
  • 39. Advanced Mediation Policies • Business Service Load Balancing & Failover Service Producer Node1 Proxy Business Service Producer Node2 Service Service Service Producer Node3 • Throttling Message Buffer Proxy Business Legacy Service Service Service
  • 40. Demonstration: Manage a Proxy Service Proxy Service approveLoan() Business ProcessLoan > $10,000? N Service approveLoan() Y Business ProcessLargeLoan Service approveLoan() Response Time > 5ms? SMTP Alert Please enable browser pop-ups!
  • 41. Product Interoperability Console BPM Synchronize Configure Monitor Tuxedo Service Service Bus Repository BPEL PM Discover Configure Design ODI Publish Workspace Build Services & Applications
  • 42. Have Licensing or technical questions? • SOA FAQ • OSB FAQ • OESB FAQ • All linked from their respective ias.us pages (start at http://soa.us.oracle.com )