java - <c :out/> unknown tag

标签 java eclipse jsp tags jstl

为什么当我包含以下行时,我在左侧的 eclipse 中收到错误提示消息。

<c:out value=${variable}/>

我得到错误“Unknown tag(c:out)”

我也包括在上面

<%@ page isELIgnored ="false" %> 

我需要包含一个 jSTL 吗?

最佳答案

您显然是在使用不支持开箱即用的 JSTL 的 servlet 容器进行开发,例如 Tomcat。在这种情况下,您需要下载 jstl-1.2.jar并放入您的 webapp 的 /WEB-INF/lib 文件夹中。 不需要其他更改,也不需要像一些糟糕的在线教程所建议的那样提取 JAR 文件和/或在 /WEB-INF 文件夹中乱放松散的 TLD 文件。

将 JAR 文件放入类路径(/WEB-INF/lib 文件夹是 Web 应用程序运行时类路径的一部分)后,您应该能够通过将根据 its documentation 在您的 JSP 顶部的以下行:

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

JSTL 1.2 至少需要在 web.xml 中声明 Servlet 2.4。因此,请确保您的 web.xml 具有正确的根声明,最好是您的 servlet 容器支持的最高支持版本(Tomcat 7 是 Servlet 3.0,Tomcat 6 是 Servlet 2.5,Tomcat 5.5 是 Servlet 2.4 ).

另见:

  • Our JSTL tag wiki page (您可以通过将鼠标放在您自己放在问题上的 [jSTL] 标记上方并单击弹出框上的 info 链接来访问此页面)

关于java - <c :out/> unknown tag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8400301/

相关文章:

java - 容器加载后运行代码 - 资源加载

java - SVN完全用本地文件覆盖远程文件

java - Large Switch Case(60 个不同的 Cases)——我该如何减少?或完善代码

即使使用 -lwininet 链接器标志,C++ wininet 也 undefined reference

java - Internet Explorer 中的货币格式日元有额外符号 "ï¿¥"

jsp - 为什么在不重新启动 Tomcat 的情况下我的 JSP 更改没有反射(reflect)出来?

java - 如何使用java清理脏文本

java - 如何在 JBehave 的测试执行中包含和排除场景?

java - 编译错误,看不懂

java - 收到错误 HTTP 状态 405 - 此 URL 不支持 HTTP 方法 GET 但从未使用过 `get`?