简体   繁体   English

如何从JSP主页面获取到Tiles JSP页面的Map值

[英]How to get a Map value to the tiles jsp page from main jsp page

Actually I'm trying to get a map values into tiles page lhsListing.jsp from a mainpage.jsp page. 实际上,我正在尝试从mainpage.jsp页面将地图值放入图块页面lhsListing.jsp中。 Is there any way to pass a map object. 有什么方法可以传递地图对象。 Here bellow my code Please help me somebody to get. 下面是我的代码,请帮助我获取代码。

mainPage.jsp mainPage.jsp

<c:forEach var="lhsSrcMap" varStatus="status" items="${lhsListMap}">  
  <tiles:insert page="/jsp/common/lhsListing.jsp" >  
  <tiles:put name="lhsSrcMap" value="${lhsSrcMap}"/>
</tiles:insert>

lhsListing.jsp lhsListing.jsp

<c:set var="lhsSrcMap"><tiles:get name="lhsSrcMap"/></c:set>
<c:forEach var="fieldRec" varStatus="status"items="${lhsSrcMap.value['LIST']['SRC_DTL_MAPS_LIST']['FIELD_LIST']}" > 

//something  

</c:forEach>

Error shows in a page: 错误显示在页面中:

Can't insert page '${lhsSrcMap}' : null [ServletException in:/jsp/common/lhsListing.jsp] An error occurred while evaluating custom action attribute "items" with value "${lhsSrcMap.value['LIST']['SRC_DTL_MAPS_LIST']['FIELD_LIST']}": Unable to find a value for "value" in object of class "java.lang.String" using operator "." 无法插入页面'$ {lhsSrcMap}':null [ServletException in:/jsp/common/lhsListing.jsp]评估值为“ $ {lhsSrcMap.value ['LIST']”的自定义操作属性“ items”时发生错误['SRC_DTL_MAPS_LIST'] ['FIELD_LIST']}“:无法使用运算符“”在类“ java.lang.String”的对象中找到“ value”的值。 (null)' (空值)'

I got a solution for my question. 我为我的问题找到了解决方案。
we can use Implicit Objects of the Unified Expression Language . 我们可以使用统一表达语言的 隐式对象

I used scope="request" in JSTL. 我在JSTL中使用scope="request"

mainpage.jsp mainpage.jsp

<c:forEach var="lhsSrcMap" varStatus="status" items="${lhsListMap}">  
   <c:set var="tileLhsSrcMap" value="lhsSrcMap" scope="request"/>
   <tiles:insert page="/jsp/common/lhsListing.jsp" >  

   </tiles:insert>
</c:forEach>  

lhsListing.jsp lhsListing.jsp

<c:forEach var="fieldRec" varStatus="status" items="${tileLhsSrcMap.value['LIST']['SRC_DTL_MAPS_LIST']['FIELD_LIST']}" > 

//something  

</c:forEach>

or use requestScope 或使用requestScope

lhsListing.jsp lhsListing.jsp

<c:forEach var="fieldRec" varStatus="status" items="${requestScope.tileLhsSrcMap.value['LIST']['SRC_DTL_MAPS_LIST']['FIELD_LIST']}" > 

//something  

</c:forEach>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM