The section about DataAccessException in the phase 3 spec has some misleading phrases that may cause students to believe that they should be extending or throwing it for the wrong reasons. If we make this section a little clearer, students might be inclined to follow better design practices with exceptions in their phase 3 implementation.
Main points we should include:
- DataAccessException is only meant to be thrown by DAO classes (for example, in the event of a SQLException)
- Students are encouraged to create their own exceptions, but to remember the principles of inheritance when considering making subclasses of DataAccessException