SlideShare a Scribd company logo
OSB Exception Handling & Logging 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Joey Wong 
Solution Architect 
Oracle Sydney
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Exceptions
Exception Handlers 
Four types of error handlers: 
• Stage 
• Pipeline 
• Route 
• Service 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Guidelines 
• Easier to handle specific errors at lowest 
level. 
• Handle more general default processing of 
errors using higher level error handlers. 
• Good practice to explicitly handle 
anticipated errors in pipeline. 
• Allow service-level handler to manage 
unanticipated errors. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Stage Error Handler 
• Use dedicated stage for each specific part 
of the message flow. 
• Allows very specific types of errors to be 
caught. 
• Enables greater level of control over error 
processing. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Pipeline Error Handler 
• Sites above the stage error handlers. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
• Exceptions re-thrown in a stage error 
handler will be propagated to the pipeline 
error handler. 
• Request pipeline error handler is typically 
the result of malformed incoming request 
messages of bug in the request path.
Route Error Handler 
• Most errors seen by OSB happen here. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
• Error handler is responsible for putting 
the fault message back into the SOAP 
body and forwarding the fault to the 
response message flow. 
• Error message should be logged/alerted.
Service Error Handler 
• Always account for unanticipated errors. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
• Enables unhandled exceptions at the 
stage, pipeline or route level to be caught 
and handled. 
• Should be used for unanticipated errors. 
• Bad practice to use this error handler to 
process all errors.
Common Error Handler 
• Depending on the type of exceptions that can be caught, you may find error handling 
code is duplicated. 
• May be more efficient to write a common error handling service. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Error Behavior 
• Errors are handled differently depending on how the service is called. 
• Do you want to roll the transaction back for an asynchronous proxy? 
• Do you want to send a fault back in response for a synchronous proxy? 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Synchronous Errors 
• Synchronous transports like HTTP must 
contain “Reply - With Failure” action. 
• This send the fault back in the response to 
the consumer. 
• Message flow terminates, no additional 
actions or error handlers will be executed. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Asynchronous Errors 
• Asynchronous transports like JMS must 
contain “Raise Error” action. 
• Similar to a rethrow in Java, causing the 
transaction to be rolled back. 
• Raise Error action will be caught by a 
higher level error handler. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Logging
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Logging Types 
• Log 
• Alerts 
• Report 
<Sept 24, 2014 2:08:33 PM PDT> <Error> <OSB Logging> <Oracle-000000> 
<[PipelinePairNode1, PipelinePairNode1_request, show text info, REQUEST] 
Text contents are: This is the file a.txt END> 
<Sept 24, 2014 2:08:33 PM PDT> <Error> <OSB Logging> <Oracle-000000> 
<[PipelinePairNode1, PipelinePairNode1_request, show text info, REQUEST] 
File name is: ftp_in/a.txt> 
<Sept 24, 2014 2:08:33 PM PDT> <Error> <OSB Logging> <Oracle-000000> 
<[PipelinePairNode1, PipelinePairNode1_request, show text info, REQUEST] 
Text contents are: This is the file b.txt END> 
<Sept 24, 2014 2:08:33 PM PDT> <Error> <OSB Logging> <Oracle-000000> 
< [PipelinePairNode1, PipelinePairNode1_request, show text info, REQUEST] 
File name is: ftp_in/b.txt>
Guidelines 
• Establish logging requirements before starting development. 
• Logging usually doesn’t need to include the entire body of the payload. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
• Set appropriate logging levels. 
• Error handlers should log at level “Error”. 
• Dedicated OSB log file. 
• Reporting action is heavy on resources. Use sparingly for Audit purposes.

More Related Content

PPTX
Before OTD EDU - Introduction
PPTX
Oracle Traffic Director Instances, Processes and High Availability explained
PDF
Oracle Traffic Director - a vital part of your Oracle infrastructure
PDF
Driving DevOps for Oracle with the orawls Puppet Modules
PPTX
OUGLS 2016: Guided Tour On The MySQL Source Code
PPTX
Openfest15 MySQL Plugin Development
PPTX
OUGLS 2016: How profiling works in MySQL
PDF
Smart monitoring how does oracle rac manage resource, state ukoug19
Before OTD EDU - Introduction
Oracle Traffic Director Instances, Processes and High Availability explained
Oracle Traffic Director - a vital part of your Oracle infrastructure
Driving DevOps for Oracle with the orawls Puppet Modules
OUGLS 2016: Guided Tour On The MySQL Source Code
Openfest15 MySQL Plugin Development
OUGLS 2016: How profiling works in MySQL
Smart monitoring how does oracle rac manage resource, state ukoug19

What's hot (20)

PDF
Using Machine Learning to Debug Oracle RAC Issues
PPTX
Con8780 nair rac_best_practices_final_without_12_2content
PDF
Oracle Fusion Middleware on Exalogic Best Practises
PDF
3 Ways to Connect to the Oracle Cloud
PDF
New Generation Oracle RAC Performance
PDF
Step by Step instructions to install Cluster Domain deployment model
PPTX
Oracle RAC features on Exadata
PDF
Maximizing Oracle RAC Uptime
PDF
TFA Collector - what can one do with it
PDF
New availability features in oracle rac 12c release 2 anair ss
PDF
Aioug ha day oct2015 goldengate- High Availability Day 2015
PDF
Java & SOA Cloud Service for Fusion Middleware Administrators
PDF
Oracle RAC BP for Upgrade & More by Anil Nair and Markus Michalewicz
PDF
Oracle RAC - A Safe Investment into the Future of Your IT
PDF
Oracle Database In-Memory Meets Oracle RAC
PDF
WebLogic on ODA - Oracle Open World 2013
PDF
AWR, ASH with EM13 at HotSos 2016
PPTX
Collaborate 17 Oracle RAC 12cRel 2 Best Practices
PDF
Cluster Health Advisor (CHA) Deep Dive by Mark Scardina
PDF
Enabling: Optimized Integrations at Amway with Oracle SOA Suite
Using Machine Learning to Debug Oracle RAC Issues
Con8780 nair rac_best_practices_final_without_12_2content
Oracle Fusion Middleware on Exalogic Best Practises
3 Ways to Connect to the Oracle Cloud
New Generation Oracle RAC Performance
Step by Step instructions to install Cluster Domain deployment model
Oracle RAC features on Exadata
Maximizing Oracle RAC Uptime
TFA Collector - what can one do with it
New availability features in oracle rac 12c release 2 anair ss
Aioug ha day oct2015 goldengate- High Availability Day 2015
Java & SOA Cloud Service for Fusion Middleware Administrators
Oracle RAC BP for Upgrade & More by Anil Nair and Markus Michalewicz
Oracle RAC - A Safe Investment into the Future of Your IT
Oracle Database In-Memory Meets Oracle RAC
WebLogic on ODA - Oracle Open World 2013
AWR, ASH with EM13 at HotSos 2016
Collaborate 17 Oracle RAC 12cRel 2 Best Practices
Cluster Health Advisor (CHA) Deep Dive by Mark Scardina
Enabling: Optimized Integrations at Amway with Oracle SOA Suite
Ad

Viewers also liked (8)

PDF
Почему Appium?
PPTX
Appium confet qa
PPTX
Mobile Application Development: Hybrid, Native and Mobile Web Apps
PPTX
Mobile Application Framework - OFM Canberra September 2014
PPT
Different types of mobile apps
PPTX
Different types of mobile apps
PPTX
Тестируем мобильные приложения в облаках с appium
PDF
Hybrid mobile apps
Почему Appium?
Appium confet qa
Mobile Application Development: Hybrid, Native and Mobile Web Apps
Mobile Application Framework - OFM Canberra September 2014
Different types of mobile apps
Different types of mobile apps
Тестируем мобильные приложения в облаках с appium
Hybrid mobile apps
Ad

More from Joelith (7)

PPTX
API Gateway - OFM Canberra October 2014
PPTX
Continuous Integration Fundamentals: Build Automation - OFM Canberra October ...
PPTX
Coherence Overview - OFM Canberra July 2014
PPTX
Continuous Integration Fundamentals: Maven - OFM Canberra July 2014
PPTX
WebLogic Performance Monitoring - OFM Canberra July 2014
PPTX
High Availability and Disaster Recovery Topologies - OMF Canberra June 2014
PPT
WebLogic 12c - OMF Canberra June 2014
API Gateway - OFM Canberra October 2014
Continuous Integration Fundamentals: Build Automation - OFM Canberra October ...
Coherence Overview - OFM Canberra July 2014
Continuous Integration Fundamentals: Maven - OFM Canberra July 2014
WebLogic Performance Monitoring - OFM Canberra July 2014
High Availability and Disaster Recovery Topologies - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014

Recently uploaded (20)

PPTX
Spectroscopy.pptx food analysis technology
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
KodekX | Application Modernization Development
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
cuic standard and advanced reporting.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Encapsulation theory and applications.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Unlocking AI with Model Context Protocol (MCP)
Spectroscopy.pptx food analysis technology
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Agricultural_Statistics_at_a_Glance_2022_0.pdf
KodekX | Application Modernization Development
Digital-Transformation-Roadmap-for-Companies.pptx
cuic standard and advanced reporting.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Review of recent advances in non-invasive hemoglobin estimation
Programs and apps: productivity, graphics, security and other tools
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Encapsulation theory and applications.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
MIND Revenue Release Quarter 2 2025 Press Release
Unlocking AI with Model Context Protocol (MCP)

OSB Exception Handling Logging - OFM Canberra September 2014

  • 1. OSB Exception Handling & Logging Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Joey Wong Solution Architect Oracle Sydney
  • 2. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Exceptions
  • 3. Exception Handlers Four types of error handlers: • Stage • Pipeline • Route • Service Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
  • 4. Guidelines • Easier to handle specific errors at lowest level. • Handle more general default processing of errors using higher level error handlers. • Good practice to explicitly handle anticipated errors in pipeline. • Allow service-level handler to manage unanticipated errors. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
  • 5. Stage Error Handler • Use dedicated stage for each specific part of the message flow. • Allows very specific types of errors to be caught. • Enables greater level of control over error processing. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
  • 6. Pipeline Error Handler • Sites above the stage error handlers. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | • Exceptions re-thrown in a stage error handler will be propagated to the pipeline error handler. • Request pipeline error handler is typically the result of malformed incoming request messages of bug in the request path.
  • 7. Route Error Handler • Most errors seen by OSB happen here. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | • Error handler is responsible for putting the fault message back into the SOAP body and forwarding the fault to the response message flow. • Error message should be logged/alerted.
  • 8. Service Error Handler • Always account for unanticipated errors. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | • Enables unhandled exceptions at the stage, pipeline or route level to be caught and handled. • Should be used for unanticipated errors. • Bad practice to use this error handler to process all errors.
  • 9. Common Error Handler • Depending on the type of exceptions that can be caught, you may find error handling code is duplicated. • May be more efficient to write a common error handling service. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
  • 10. Error Behavior • Errors are handled differently depending on how the service is called. • Do you want to roll the transaction back for an asynchronous proxy? • Do you want to send a fault back in response for a synchronous proxy? Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
  • 11. Synchronous Errors • Synchronous transports like HTTP must contain “Reply - With Failure” action. • This send the fault back in the response to the consumer. • Message flow terminates, no additional actions or error handlers will be executed. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
  • 12. Asynchronous Errors • Asynchronous transports like JMS must contain “Raise Error” action. • Similar to a rethrow in Java, causing the transaction to be rolled back. • Raise Error action will be caught by a higher level error handler. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
  • 13. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Logging
  • 14. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Logging Types • Log • Alerts • Report <Sept 24, 2014 2:08:33 PM PDT> <Error> <OSB Logging> <Oracle-000000> <[PipelinePairNode1, PipelinePairNode1_request, show text info, REQUEST] Text contents are: This is the file a.txt END> <Sept 24, 2014 2:08:33 PM PDT> <Error> <OSB Logging> <Oracle-000000> <[PipelinePairNode1, PipelinePairNode1_request, show text info, REQUEST] File name is: ftp_in/a.txt> <Sept 24, 2014 2:08:33 PM PDT> <Error> <OSB Logging> <Oracle-000000> <[PipelinePairNode1, PipelinePairNode1_request, show text info, REQUEST] Text contents are: This is the file b.txt END> <Sept 24, 2014 2:08:33 PM PDT> <Error> <OSB Logging> <Oracle-000000> < [PipelinePairNode1, PipelinePairNode1_request, show text info, REQUEST] File name is: ftp_in/b.txt>
  • 15. Guidelines • Establish logging requirements before starting development. • Logging usually doesn’t need to include the entire body of the payload. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | • Set appropriate logging levels. • Error handlers should log at level “Error”. • Dedicated OSB log file. • Reporting action is heavy on resources. Use sparingly for Audit purposes.