java - 当使用 <%@ page isELIgnored ="false"%> 时,静态属性必须是字符串文字

标签 java jsp jsp-tags

我使用jsp页面和jSTL以下标签。

 <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
 <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
 <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
 <%@ taglib prefix="vlh" uri="/WEB-INF/tld/valuelist.tld" %>
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
 <%@ page import="java.util.List" %>
 <%@ page import="java.util.Locale" %>
  <%@ page isELIgnored ="false" %>

 ...... <c:forEach items="${list}" var="productInfo">

当我运行它时,它显示以下错误...

  selectLoginProfile.jsp:144:17: Static attribute must be a String literal, its illegal to specify an expression.
          <c:forEach items="${list}" var="productInfo">
                                 ^---^
 selectLoginProfile.jsp:148:70: Static attribute must be a String literal, its illegal to specify an expression.
                document.ProfileLoginForm.userName.value='<c:out value="${userInfo.userName}"/>';
                                                                 ^---^

最佳答案

替换你的核心标签库

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

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

关于java - 当使用 <%@ page isELIgnored ="false"%> 时,静态属性必须是字符串文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43610420/

相关文章:

java - 如何在没有 <form> 元素的情况下将参数从 JSP 页面发送到 Servlet

java - 如何在spring中显示具有帐户状态的用户列表

javascript - 我应该如何在我的 .js 和 css 位于不同位置的 jsp 中定义路径

html - 将 POST 方法与 HTML anchor 标记一起使用

java - 将对象数组扩展到参数列表

html - Servlet返回“HTTP状态404请求的资源(/Servlet)不可用”

java - jsp页面被下载而不是被显示

java - 如何测试一个只有很小 API 但有很多私有(private)函数的类?

java web start 应用程序无法在 java7u45 上启动

Java 存储来自扫描仪的输入