Java 表达语言及;日食警告:“日食”;项目“;不支持运行时表达式

Java 表达语言及;日食警告:“日食”;项目“;不支持运行时表达式,java,eclipse,jsp,jstl,el,Java,Eclipse,Jsp,Jstl,El,我有以下JSP: <%@ page contentType="text/html" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %> <%@ page isELIgnored="false"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http:

我有以下JSP:

<%@ page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%@ page isELIgnored="false"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title><c:out value="${it.title}"/></title>
    </head>
    <body>
        <c:forEach var="speaker" items="${it.speakers}" varStatus="stat">
            <ul>
                <li><c:out value="${speaker.person.firstName}" /> <c:out value="${speaker.person.lastName}" />, <c:out value="${speaker.person.address.city.zip}" /> <c:out value="${speaker.person.address.city.name}" /></li>
            </ul> 
        </c:forEach>
    </body>
</html>
但是,这不是真的,服务器会正确评估EL

有人能告诉我为什么eclipse会警告我这些EL表达式吗?

可能的解决方案():

双库

JSTL标记库有两种 仅在方式上不同的版本 它们支持使用运行时 属性值的表达式

在JSTL-RT标记库中, 表达式在 页面的脚本语言。这是 目前的情况究竟如何 当前标记库

在JSTL-EL标记库中, 表达式在JSTL中指定 表达语言。一个表达是 的语法中的字符串文字 埃尔

使用EL标记库时,您可以 无法传递脚本语言 表达式的值 属性这条规则使它成为可能 验证 翻译时的表达


因此,您的eclipse和服务器可能使用不同的标记库。

您的taglib指令导入JSTL 1.0 taglib。它应该是JSTL 1.1(注意URI中的差异):


试试这个: 更改此项:

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

是的:

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


希望对你有用。这是我从www.csdn.net上得到的

并确保web.xml至少声明为Servlet 2。4@BalusC我得到了这个异常,它似乎与您的评论有关:org.apache.jasper.jaspereException:绝对uri:无法在web.xml或与此应用程序一起部署的jar文件中解析。您能帮助我做什么吗?还应该提供相应的jstl库添加:jstl-1.2.jar,而不是jstl.jar和standard.jar,谢谢。。这对我有用。有没有办法在默认情况下将行添加到所有JSP文件中?这绝对不是正确的解决方案。建议的URI来自JSTL“原型”版本。您应该至少升级到JSTL 1.1。另请参见axtavt的答案和
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>