java - 在jsp和java之间重用变量名(Spring)

标签 java html spring jsp jstl

我现有的jsp是

<c:forEach var="domainOrGroupParentDetails"
    items="${allDomainOrGroupParentDetails}" varStatus="status">
    <option
        value="${domainOrGroupParentDetails.domainOrGroupParentPojo.name}">
        ${domainOrGroupParentDetails.domainOrGroupParentPojo.name}</option>
</c:forEach>

我现有的 Spring Java 是

data.put("allDomainOrGroupParentDetails",
    getDomainOrGroupParentResponse.getDomainOrGroupParentPojoWrappers());

来自this ,我尝试执行以下操作

public class ModelObjectKeys {
    public static class OnLoadAddDriverConstants {

    }
    public static final String allDomainOrGroupParentDetails = "allDomainOrGroupParentDetails";
}

在jsp中我做了

<c:forEach var="domainOrGroupParentDetails"
    items="${<%=ModelObjectKeys.allDomainOrGroupParentDetails%>}" varStatus="status">
    <option
        value="${domainOrGroupParentDetails.domainOrGroupParentPojo.name}">
        ${domainOrGroupParentDetails.domainOrGroupParentPojo.name}</option>
</c:forEach>

我还像这样在html中导入了java文件

<%@ page import="com.mnox.corporate.model.design.ModelObjectKeys"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>

还是不行。我明白了

org.apache.jasper.JasperException: /WEB-INF/views/onLoadAddDriverView.jsp (line: 270, column: 10) "${<%=ModelObjectKeys.allDomainOrGroupParentDetails%>}" contains invalid expression(s)

我错过了什么?

编辑

Jun 19, 2017 7:28:11 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [appServlet] in context with path [/BuseetaCorporate] threw exception [An exception occurred processing JSP page /WEB-INF/views/onLoadAddDriverView.jsp at line 271

268:                                        <c:forEach var="domainOrGroupParentDetails"
269:                                            items="${ModelObjectKeys.allDomainOrGroupParentDetails}" varStatus="status">
270:                                            <option
271:                                                value="${domainOrGroupParentDetails.domainOrGroupParentPojo.name}">
272:                                                ${domainOrGroupParentDetails.domainOrGroupParentPojo.name}</option>
273:                                        </c:forEach>
274:                                    </select>
Stacktrace:] with root cause
javax.el.PropertyNotFoundException: Property 'domainOrGroupParentPojo' not found on type java.lang.String
    at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:268)

最佳答案

更改items="${<%=ModelObjectKeys.allDomainOrGroupParentDetails%>}"items="${ModelObjectKeys.allDomainOrGroupParentDetails}"

不能在 EL 表达式中嵌套脚本

关于java - 在jsp和java之间重用变量名(Spring),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44632174/

相关文章:

java - JPA/Hibernate - 删除子项会删除父项(从同一个表中)

html - 水平对齐标签与输入文本

javascript - 如何在选择另一个按钮时停止脚本

java - Spring在运行时注册bean

java - 如何将 HTTP POST 请求从 Servlet 发送到外部 Web 服务?

java - 缩放可绘制资源

java - 在android中,如何备份java类的内容并恢复它

javascript - 仅切换给定 div 中的内容

java - 这个春训有用吗?

java - Logback 扩展 - Spring 集成 - FileAppender 不工作