Struts - 所有.tld文件位于哪个jar文件中

6
我正在开发一个基于Struts的Web应用程序,对于Struts我还是新手。我想在jsp页面中使用struts-html.tld标签库,这是由Struts提供的。
当我在网上搜索时,我发现,在Struts 1.2.9之前,我们需要手动查找.tld文件。
但现在这些.tld文件被打包在.jar文件中,我们只需要像在项目中使用其他jar文件一样使用它们即可。
Q1. 那么我的问题是这些.tld文件位于哪个jar文件中?我从Javaranch的答案中得知,这些.tld文件被打包进了struts-taglib.jar文件中。我下载了完整的Struts库,但没有找到该jar文件。
4个回答

7

不清楚您使用的是哪个版本的Struts,但您所提到的TLD是Struts 1 TLD。

在Struts 1.3.10中,它包含在struts-taglib-1.3.10.jar/META-INF/tld/struts-html.tld中,该文件分发在struts-1.3.10-lib.zip中。 在Struts 1.2.9中,您可以在struts-1.2.9-lib.zip的根目录中找到它。

仅为防止混淆,请注意Struts 2使用完全不同于Struts 1的标签库,并且只有一个标签库而不是多个。相应的TLD位于struts2-core-2.1.8.1.jar/META-INF/struts-tags.tld中。


我正在使用struts 2.1.8.1。我已经将struts2-core-2.1.8.1.jar放入\WEB-INF\lib目录中。之后,我在一个jsp页面中使用了<%@ taglib prefix="html" uri="/struts-tags">,在其中我想使用由struts提供的<html:form>标签。但是我遇到了一个异常,你可以在问题http://stackoverflow.com/questions/2395364/struts-exception-the-struts-dispatcher-cannot-be-found中看到。 - Amit
请检查我对Yatendra Goel的问题的回答。 - Buhake Sindi

2

struts2-core-2.2.1.1.jar将包含以下位置的TLD文件 struts2-core-2.2.1.1.jar/META-INF/struts-tags.tld


0

我在我们使用Struts的一个项目中查看了一下,发现了这个tld文件:struts2-core-j4-2.0.11.jar\META-INF\struts-tags.tld

请注意,您可以使用Windows搜索在Jar文件中进行搜索。如果您在搜索时遇到问题,请参见此处


1
Struts 2 标签与 Struts 1 标签不兼容。实际上,Struts 2 是来自于 WebWork 2 项目。它无法在 Struts 1 上运行。 - Buhake Sindi

0

下载Struts完整分发版,在存档中找到struts-blank.war。解压缩struts-blank.war,在WEB-INF文件夹下,将所有.tld文件复制到您的WEB-INF文件夹中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接