1. In tag directive if we use tagdir then our implemention class is tag file.
Here the path given for tagdir value, should locate the directory where in we place tag file.
Not necessarily. I thought the same thing before I tried it. I used the tagdir (#2) attribute of a page directive that pointed to a tld. In the tld I had implementations of both SimpleTag and Classic tags. It worked fine. I never tried to use the tagdir attribute to point to a tld but it works fine. So you can use the tagdir attribute to point to both a tagfile and a tld. I never thought of using the tagdir to point to a tld but it is legit to do so. Nice to know
PS - what about the option that has a tld under the lib directory? Is it incorrect because you should not place a tld under the lib (or classes) directory?