当我们用下面的编译器指令,我不web.xml中JSP taglib如何找到.tld?
<%@ taglib uri="/struts-tags" prefix="s"%>
什么都会做的Tomcat与使用? taglib如何找到.tld? 它有搜索顺序吗?我想知道这个原则。 THX〜
当我们用下面的编译器指令,我不web.xml中JSP taglib如何找到.tld?
<%@ taglib uri="/struts-tags" prefix="s"%>
什么都会做的Tomcat与使用? taglib如何找到.tld? 它有搜索顺序吗?我想知道这个原则。 THX〜
下面是它的工作方式:包含标记库有.TLD文件,这反过来又一个<uri>
标签与需要匹配你的JSP值的字符串
的JAR文件。
例如,标准JSTL JAR与此URI一个c.tld文件:
<uri>http://java.sun.com/jsp/jstl/core</uri>
这就是你需要使用核心JSTL标记库的URI。
它无关,你把罐子里,一切都做的.TLD。
容器搜索Web应用程序的所有.TLD,首先在WEB-INF目录下,接下来的WEB-INF中的所有子目录,如果有一个jar文件,他里面搜索,如果有一个TLD文件。 之后,容器映射每个uri与tld文件一起发现。
我不太明白,你可以说的更详细。我知道它使用标签以匹配我的JSP的价值,但如何才能找到它具有.TLD的JAR文件? –
koppt
2012-04-09 15:16:55
我不同意 - 你不“知道”它使用标签值,因为你发布的是错的。请参阅文档:http://struts.apache.org/1.x/userGuide/configuration.html。至于如何,JAR在你的CLASSPATH中 - 你的应用服务器的/ lib目录或WAR的WEB-INF/lib。 –
duffymo
2012-04-09 15:20:54
我能想到:在JAR的.TLD有,和<%@ taglib伪...>将匹配其与.TLD的,如果相同则取得标签?所以编译器会在我的CLASSPATH中搜索JAR并找到正确的.tld? –
koppt
2012-04-09 15:42:28