Page 476 of Head First
Servlet and
JSP says that the four places
where containier looks for TLDs are
1. Directly inside WEB-INF
2. Directly inside a sub-directory of WEB-INF
3. Inside the META-INF directory inside a JAR file that's inside WEB-INF/lib
4. Inside a sub-directory of META-INF inside a JAR file thats's inside WEB-INF/lib
Reading (2) above made me feel that the containder will look for the TLDs directly inside a sub-directory of WEB-INFs but will NOT traverser through layers of subdirectories to find it. For example
I can have /myapp/WEB-INF/myFunctions.tld or /myapp/WEB-INF/tlds/myFunctions.tld
but we can not have /myapp/WEB-INF/tlds/core/myFunctions.tld
Again, as (3) and (4) does not use the
word "directly", it makes me "feel' that the container will be able to locate the TLDs from any place under
the folder /myapp/WEB-INF/lib/jar/META-INF. Either directly under, or directly under a direct sub-directory or under any layer of sub-directory.
Now, when I come to page 485, the answer of Question 1 indicates that the TLD file may be placed in any subdirectory of WEB-INF.
This contradicts (1) and (2).
Please advise if the answer at 485 is wrong of the use of word "Directly" at page 476 is wrong.