0

所以我检查了其他相同的问题,但它们并不完全相同,或者我的情况的答案不同。这就是我所拥有的:在服务器上我设置了一个属性,

request.getSession().setAttribute(tableField.getSiglaId()+"_rowSize",new Integer(tableSize));

在 jsp 文件中我试图获取这个属性值,但是由于你不能嵌套 el 表达式,我使用核心标签库来设置一个新变量:

<c:set var="trueRowSize" value="${field.siglaId}_rowSize" />

输入 ${trueRowSize} 将给出输出“timers_rowSize”。但我想获得具有上述名称的属性。如果我输入 ${timers_rowSize},它将给出我想要的正确值。

使用:

 ${requestScope[trueRowSize]} 

似乎也没有工作。

4

2 回答 2

1

你把你的属性放在会话中:

request.getSession().setAttribute(...);

所以你不会在 requestScope 中找到它,而是在 sessionScope 中:

${sessionScope[trueRowSize]} 
于 2013-03-26T12:20:23.387 回答
1

实际上你可以嵌套表达式。嗯,有点。c:set 标签可以从自身的主体中获取它的值,所以你可以有如下的东西:

<c:set var="trueRowSizeText">
  My true row size is: <c:out value='request.getSession().setAttribute(tableField.getSiglaId()+"_rowSize",new Integer(tableSize));'/>
</c:set>

也看看这个类似的问题 - JSP/JSTL 中的嵌套表达式

于 2013-07-29T12:50:39.127 回答