关于JSP标签库的问题

拿JSP的C标签库为例
1。在JSP页面上使用
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
两者有什么区别?下面那种我会,上面那种URI方式是怎么得来的呢?
2。使用自定义标签库不是要在WEB。XML中配置吗?为什么我一配置就报错, 而不在WEB。XML中配置一样可以用?

那啥,下面的这种你没写错么?

回到你的问题。
1)第一种其中的http://java.sun.com/jsp/jstl/core来自于jstl的二进制包里面的c.tld文件。你找到standard.jar,然后用rar打开来就可以看到里面有两个文件夹。其中一个叫做META-INF,在这文件夹下面就有c.tld,在c.tld里面就定义了 <uri>http://java.sun.com/jsp/jstl/core</uri> ,这便是taglib指令中uri的来源。

2)自定义标签库的定义不是在DD(web.xml)里面定义的,而是在tld文件里面定义的。tld文件存放在WEB-INF文件夹下面或者及其子文件夹下。如果是放置在jar文件中的话,那么就应当放置与META-INF文件夹下面或者其子文件夹下面。

如果我没记错的话,taglib的uri属性应该不能直接用文件的路径名来代替的才对。
温馨提示:答案为网友推荐,仅供参考
相似回答