我有一个自定义的标记处理程序test/StubCTag.java,它是一个简单的标记。有一个testing.tld文件定义了ctag:-
<?xml ... ?>
<taglib ...>
...
<tag>
<name>stubctag</name>
<tag-class>test.StubCTag</tag-class>
</tag>
</taglib>
当将其打包为jar档案时,文件的布局如下:-
testing.jar
-----------
/META-INF/testing.tld
/META-INF/classes/test/StubCTag.class
当在前缀为testprefix的jsp页面中使用自定义标记时,浏览器会为标记"testprefix:StubCTag"显示"Unable to load tag handler class"test.StubCTag"。我已经仔细检查了存档,并且tld和类文件都存在。我在网上搜索了一下,但没有得到任何关于标签处理程序作为库的一部分的内容。
有人能告诉我如何将类文件打包为自定义标记库吗?
你能以这种方式包含你的标签库吗:
<%@ taglib uri="uri element in tld" prefix="testprefix" %>
有问题的jar包含标记处理程序类和标记。我将文件布局更改为
/META-INF/testing.tld
/test/StubCTag.class
其余部分保持不变。没有更多的错误,jsp页面按预期显示输出,从而解决了问题。