Web Services Exception Handling Framework for EAI Applications
In this first in a series of article, you will learn about fundamental exception handling approaches for EAI applications with real-time scenarios. You will learn about the usage of exception handling guidelines, EAI system behavior, and best practices in the direction of implementing a generic EAI exception-handling framework using an industry accepted Web service framework.
For this simple application, the exception handling catches application errors and notifies the users with relevant error messages. Where the EAI application is concerned, the exception-handling framework plays a bigger role and the degree of applying the exception handling approaches is higher because many systems are involved in the entire application workflow. So, you need to think about all aspects to make a successful exception-handling framework.
The objective of any exception-handling framework is to identify critical breakdown points and overcome from such system breakdowns. To do so, you take alternative notifying or resolving processes in the direction of making the robust system in terms of reliability and high availability.
Exceptions can happen at any point in the application states; for example, during process initialization, in the middle of the process, or it may be at the end of the process.
The exception handling framework should be designed in direction of diagnosing/monitoring of each of individual system transaction, analyzing all possible pitfalls (cause of the system failures) for each transaction and include corresponding preventive action processes in the exception handling framework itself to avoid all analyzed breakdowns.
Following are the stages of the EAI Error handling life cycle.
- Monitor/Diagnose each individual transaction of the developed/deployed EAI application.
- Analyze predictable events that cause system/application failures.
- Identify preventive measures for each analyzed pitfall.
- Design preventive actions process to take into the derived alternative flow when the exception happens.
- The exception handling process life cycle is endless and proportional as and when new enhancements are added to the System.
- When new features are introduced in the system, apply the next degree of exception handling for newly included features:
- If (system performance is better than earlier), add the next level of error prevention/error handling mechanism.
- If (system performance is degraded by newly added features), analyze the newly enhanced features with respect to already defined Exception Handling Framework. If there is need to incur the new changes, redefine the Exception Handling Framework by starting from Step 1.
Repeat the above steps to incrementally tune the exception-handling framework until a fine-tuned SYSTEM is created in terms of consistency,durability, maintainability, reliability, stability, and high availability.
Overview of Web Services Exception Handling Framework for EAI Applications
Figure 1: Overview of Web Service Exception Handling Framework
The EAI application works at both the data level and business process level and assists in sharing data with many systems. The EAI application provides connectivity with different business systems and sharing of data depends on the nature of the data that is being exchanged across the systems.
The EAI application maintains a centralized repository to store data for each of the connected systems. Use this meta data to track all the live systems and reconnect the system as and when connection failures happen.
The primary feature of Web services is to provide the connectivity among disparate systems by following uniform standards such as WSDL, SOAP, UDDI, and XML.
Web Services or Service-Oriented Architecture provides a generic centralized exception handling framework that can be fitted into any EAI application.
The key inputs for the error handling framework are the fundamental requirements of given EAI application, the flow of execution of each requirement or task, the expected result of a given task, and how the application is connected/deployed with the different participating systems.
The behavior of the EAI exception handling framework is more or less similar to other exception handling framework; none other than the fundamental EAI application property notifies the connection failures with the relevant process state information.
Web Services Exception Handling Framework Guidelines for EAI Applications
The following are the most commonly used principles of any exception handling framework:
- The first step to designing an exception handling framework is considering all possible real-time scenarios and respective blocking factors to implement such real-time scenarios.
- Analyze the impact of each blocking factor by drilling down the problem.
- Categorize the blocking factors (exceptions or bugs) as critical, medium, and low, based on the severity of the problem.
- Tune the application architecture until the number of blocking factors is minimal. The number of blocking factors or bugs should be zero for a successful application.
- Define the alternative flow for each blocking factor and avoid SYSTEM blocking throughout the process execution.
- Define a notification mechanism for each system failure by giving a relevant message (error messages) to track the system behavior.
- Track all of the process execution states and generate in error log file where and when the application is blocked by exceptions.
Page 1 of 2