首页 > 技术文章 > 关于According to TLD or attribute directive in tag file, attribute value does not accept any expressions异常

hebin-javaemperor 2014-04-29 13:35 原文

  在做项目时遇到了这个异常,网上一查才知道 JSTL core库的版本问题。

  当我们在web.xml中使用:

  <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
      .....
    </web-app> 时

  我们在jsp才用<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>方式引入。

  而当我们的web.xml是

  <web-app 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" version="2.4">

  或

  <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

  则需要:

  在jsp中用<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>方式引入。

  若若版本不对应在运行时可能会出现JSP异常, 发生在使用JSTL库: According to TLD or attribute directive in tag file, attribute value does not accept any expression.

推荐阅读