| By Dan Stieglitz | Article Rating: |
|
| August 10, 2005 11:00 AM EDT | Reads: |
20,338 |
When the execute() method of DatabaseFailover is called it will attempt to create a connection getMaximumRecoveryAttempts() or until isConnected(), whichever comes first. When an exception is thrown while trying to get a connection, Prob-lo-Matic is invoked. The DatabaseRetryHandler will be loaded with the DatabaseProblem passed in, and callbacks will be made to DatabaseFailover with new connections that are made by the handler. This approach has given us clean encapsulation of our error-handling logic, and the ability to easily maintain or augment this logic. Using AOP, we can weave this functionality into our system with little impact on the core system code.
Summary
AOP provides developers with a new and exciting methodology that builds on top of OOP concepts, and tries to mitigate some of the inherent problems that OOP brings to large, complex projects. AOP will also bring new challenges to development, especially when it comes to implementing aspects in effective and maintainable ways. Error handling is clearly an important aspect for many applications, especially those with high reliability requirements. An extensible framework for error handling such as Prob-lo-Matic, integrated into applications with AOP, can add a good deal of value to any development effort. Prob-lo-Matic, an open source work in progress, can be downloaded from http://problomatic.sourceforge.net/.
Published August 10, 2005 Reads 20,338
Copyright © 2005 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Dan Stieglitz
Dan is an independent software consultant in New York. He specializes in designing and developing distributed applications in Java and J2EE.
- Kindle 2 vs Nook
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- Confessions of a Ulitzer Addict
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- It's the Java vs. C++ Shootout Revisited!
- Cloud Computing Can Revitalize Your Career as Software Developer
- IBM Could "Reinvent" Java: Mills
- Oracle & Cloud Computing: Exclusive Q&A with SVP Richard Sarwal
- A Brief History of Cloud Computing
- Kindle 2 vs Nook
- Cloud CEOs, CTOs & SVPs to Speak at 4th International Cloud Computing Expo
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- The Difference Between Web Hosting and Cloud Computing
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- Ajax in RichFaces 3.3, JSF 2 and RichFaces 4
- Confessions of a Ulitzer Addict
- My Thoughts on Ulitzer
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- A Cup of AJAX? Nay, Just Regular Java Please
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- JavaServer Faces (JSF) vs Struts
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Bean-Managed Persistence Using a Proxy List
- Reporting Made Easy with JasperReports and Hibernate
- Creating a Pet Store Application with JavaServer Faces, Spring, and Hibernate
- What's New in Eclipse?
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- i-Technology Predictions for 2007: Where's It All Headed?



































