1

我的进口:

  xmlns:c="http://java.sun.com/jstl/core"
  xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"

我的 JSTL 代码:

  <h:outputLabel value="YESS" >
  <fmt:formatNumber value="0.25" type="percent"></fmt:formatNumber>

HTML 生成代码:

  <label>YESS</label>
  <fmt:formatNumber value="0.25" type="percent"></fmt:formatNumber>

生成的代码表明 JSTL 核心是用 HTML 翻译的。
但是 JSTL“fmt”不是在 HTML 中翻译的。





更多信息:

    <fmt:ErrorInThisFunctionName value="0.25" type="percent" />    ===> generate an error
  • 我在Tomcat 6上工作
4

5 回答 5

2

皮埃尔所说的,还有,

尝试xmlns:fmt="http://java.sun.com/jstl/fmt"

检查 web.xml

<web-app version="2.4"
                 xmlns="http://java.sun.com/xml/ns/j2ee"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
于 2009-06-09T19:40:38.053 回答
1

建议:

  • 检查您的 TLD 文件。
  • 检查 web.xml 中的标头(DTD、属性)
于 2009-06-09T19:32:02.173 回答
1

如果您使用的是普通的 JSP 语法而不是基于 XML 的语法,请尝试使用

<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %>
于 2009-06-09T20:24:30.307 回答
0
xmlns:c="http://java.sun.com/jstl/core"
xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"

核心标签库的 URI 无效。它应该是http://java.sun.com/jsp/jstl/core根据其TLD,带有/jsp. 根据其TLD格式 taglib 的 URI 非常好。

核心标签库是否以任何方式工作?如果它不能正常工作,那么它只是意味着根本没有安装 JSTL。默认情况下,Tomcat 不附带 JSTL。您需要下载jstl-1.2.jar并将其放入/WEB-INF/lib您的 webapp。就这样。不要像一些糟糕的教程所建议的那样提取 JAR 文件并将其松散的内容(TLD 文件等)放在类路径中。它只会变得更糟。如果你已经这样做了,你应该清理。只需将 JSTL JAR 放在类路径中就足够了。

于 2010-02-19T10:57:02.043 回答
0

我遇到了完全相同的问题,我基本上会声明并且它不会被翻译成 HTML(基本上,不是打印变量,而是整个 c:out 被打印在 html 源代码中)。我忘记将此依赖项添加到 maven:

        <dependency>
            <groupId>taglibs</groupId>
            <artifactId>standard</artifactId>
            <version>1.1.2</version>
        </dependency>

(如果xml不打印,groupId为taglibs,artifactId为标准,版本为1.1.2

于 2011-06-16T22:07:46.573 回答