Packaging and Installing a Tag Library
During development, you may want to let the tag library classes and
the TLD file reside as-is in the filesystem, since it makes it easy
to change the TLD and modify and recompile the classes. Just make
sure the class files are stored in a directory that’s part of
the classpath for the JSP container, such as the
WEB-INF/classes
directory for the web
application. The TLD must also be in a directory where the JSP
container can find it. The recommended location is the
WEB-INF/tlds
directory. To identify the library
with the TLD stored in this location, use a taglib
directive in the JSP pages like this:
<%@ taglib uri="/WEB-INF/tlds/orataglib_1_0.tld" prefix="ora" %>
Here the uri
attribute refers directly to the TLD
file’s location.
When you’re done with the development, you may want to package
all tag handler classes, TagExtraInfo
classes,
beans used by the tag handler classes, and the TLD in a JAR file.
This makes it easier to install the library in an application. The
TLD must be saved as /META-INF/taglib.tld
within
the JAR file.
To create the JAR file, first arrange the files in a directory with a structure like this:
META-INF/ taglib.tld com/ ora/ jsp/ tags/ generic/ EncodeHTMLTag.class ... util/ StringFormat.class ...
The structure for the class files must match the package names for your classes. Here a few of the classes in the tag library for this book are shown as an example.
With the file structure in place, use the jar
command to create the ...
Get Java Server Pages now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.