JSTL标记不能在HTML中翻译

时间:2009-06-09 19:26:03

标签: html jstl tags translate

我的进口:

  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上工作

5 个答案:

答案 0 :(得分: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">

答案 1 :(得分:1)

建议:

  • 检查您的TLD文件。
  • 检查web.xml中的标题(DTD,属性)

答案 2 :(得分:1)

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

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

答案 3 :(得分:0)

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

核心taglib的URI无效。它应http://java.sun.com/jsp/jstl/core /jsp/WEB-INF/lib。格式taglib的URI完全没有TLD

核心taglib是否以任何方式工作?如果它不起作用,那么它只是意味着根本没有安装JSTL。默认情况下,Tomcat不附带JSTL。您需要下载TLD并将其放入您的网络应用的{{1}}。就这样。 提取JAR文件并将其松散的内容(TLD文件等)放在类路径中,正如一些不好的教程所暗示的那样。它只会变得更糟。如果你已经这样做了,你应该清理。 将JSTL JAR放入类路径就足够了。

答案 4 :(得分: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