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/>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]