It’s easy to make mistakes when using custom actions in a JSP page. Everyone types the wrong attribute name now and then or forgets to specify a mandatory attribute. When custom actions depend on each other, using the cooperation techniques described earlier in this chapter, they typically need to be used in a specific order or nesting structure, and this isn’t always obvious from the documentation. As a custom action developer, you have a number of tools at your disposal to help the page author find and correct errors like these.
The first tool is the TLD. The TLD contains information about the attributes each action element supports and whether a body is supported or not. The JSP container uses this information to verify that the page author uses the custom action correctly, at least in the most basic sense.
For more advanced validation, I’m afraid you have to
do a bit of coding yourself. The most powerful validation tool
defined by the JSP specification is the
TagLibraryValidator class. You can extend this
class and bundle the subclass with your tag library to validate all
aspects of JSP pages that use your library. A less powerful option,
but still useful in some cases, is the
TagExtraInfo class. Extensions of this class can
validate the use of a single custom action, for instance that
optional attributes are used correctly.
The next three sections describe these validation alternatives in detail.
When the JSP container converts ...