java - 如何在同一个JSP中使用jSTL/functions和jSTL/fmt

标签 java jsp jstl el

我在 JSP 中导入了两个库 jSTL/functionsjSTL/fmt,如下所示:

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

我尝试使用这两个库来格式化日期,获取字符串的长度 我运行页面时遇到问题,问题是:

 org.apache.jasper.JasperException: Attempt to redefine the prefix fn to    
 http://java.sun.com/jsp/jstl/functions, when it was already defined as     
 http://java.sun.com/jsp/jstl/fn in the current scope

我尝试删除一个并尝试使用其前缀而不是另一个,但它也失败了,其主要原因是什么:

最佳答案

我遇到此问题的唯一一次是当我将两个标记库设置为前缀“fn”时,如下所示:

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fn" %>

你的例子中显然没有这个,但是我大胆猜测你在某个时候有过这种方式并编译了jsp。现在您已经解决了问题,页面/项目可能需要重新编译。

如果您没有显式取消部署应用程序,我还遇到过 Tomcat“保留”旧版本的情况。这可以在 Netbeans 中通过转到“服务”->“服务器”->{您的 tomcat 实例}->“Web 应用程序”->{右键单击应用程序名称}->“取消部署”来完成。

您还可以从工作目录和 Web 应用程序文件夹中的 Tomcat 文件夹中删除它来完成相同的操作。

关于java - 如何在同一个JSP中使用jSTL/functions和jSTL/fmt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20526237/

相关文章:

html - 在 JSP 页面中获取当前语言环境日期格式

java - 无法迭代 jSTL jsp 中的对象列表

java - 如何从 Windows 运行 ZooInspector

java - 如果字段是另一个类,则访问 jSTL 中类的字段

java - 未终止 <表格 :input tag

java - 有点混淆 SQL 和 Tomcat

javascript - 如何让 Jackson 在输出字符串中转义 &lt;/script&gt;?

java - 写入文件时意外的线程同步

java - 为信用卡生成随机数

java - Android:如何在不同线程中迭代 ArrayList<String>