當我們用下面的編譯器指令,我不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