Re: uri question..
Kris Schneider <[email protected]>
| Newsgroups | gmane.comp.jakarta.taglibs.user |
|---|---|
| Message-ID | <[email protected]> |
maya wrote: > hi, > > I have been studying taglibs and beans for days now, and am still > confused about some things, but for now a simple question (I hope..) re > uri: > > let's take JSTL.. the jstl.jar for my app is here.. > > /WEB-INF/lib > > yet the uri for it in taglib directive in JSP (and in <uri> tag in tld) is > > http://java.sun.com/jsp/jstl/core > > how does the container find the classes in /WEB-INF/lib/jstl.jar when > the uri points to an outside url? (and the classes are not at this url > either..;) > > hope this question makes sense.. in oreilly (JSP, 3rd ed, ch7) it says > the 'uri' attr in taglib directive in JSP is there to find "the class or > tag file for each custom action." > Then in the very next sentence it says, "the attribute contains a string > the container uses to locate the TLD for the library.." but it points to > a uri for the classes, right? (or tag files..) not the tld.. > > (and come to think of it, why is this necessary at all, since the <tag> > element in the tld always has a reference to the class (like the web.xml > for servlets always contains a ref to the servlet class..) and if using > tag files like this: > > <tag-file> > ... > <path>/WEB-INF/tags/mytags/copyright.tag</path> > </tag-file> > > so, what exactly is the point of the uri and what DOES it point to > really? thank you.. > > -m The JSP 2.0 spec describes the uri attribute like this: Either an absolute URI or a relative URI specification that uniquely identifies the tag library descriptor associated with this prefix. There are a couple of things to take from that: 1) it's an identifier (not a location); 2) it identifies a TLD (not classes - all classes should reside in WEB-INF/classes or in JAR files in WEB-INF/lib). Although it's common to use a URL for the value of the uri attribute, it's really nothing more than an identifier. Think of it as a key in a map where the map values are TLDs. -- Kris Schneider <mailto:[email protected]> D.O.Tech <http://www.dotech.com/>