However, it may not make sense to do so when NoRecordFoundException is thrown since this is an application exception from which the user has a recovery path. A better option is to show this as an ActionError and give the user a chance to change search criteria. For situations like this, you have to resort to programmatic
exception handling

This emphasizes your cluelessness even more.
Check out the local exception tags.They
provide a much cleaner way to implement the same.

I don't think if you could achieve the same using Struts based declaritive exception handling.

Struts provides a much better way for localizing messages. Simply add an error code to your BaseException and print the localized message by creating your own ExceptionHandler which extends the struts errorhandler.Map your base exception to
the custom error handler.