EL - 使用请求对象访问applicationScoped hashMap的条目

时间:2014-08-07 19:06:25

标签: java jsp el

我有一个存储在应用程序Scope中的hashmap,我想从input(String)传递键并检索相应的(value)ArrayList,然后遍历arrayList并执行一些操作 -

           HashMap<String,List> envList

我有一个表单输入变量&#34; acno&#34;在jsp中定义

直观地说,应支持类似 - $ {applicationScope [envList [param.acno]]}

这给出了一个错误,我尝试了一些解决方法,例如,将输入设置为页面作用域的变量(帐户) -

        input ac no. : ${param.acno}
        <c:set var="account" value=" ${param.acno}"/>
        param set : ${account}

         envs -  ${applicationScope[envList[account]]}
         <c:forEach var ="row" items ="${applicationScope.envList[account]}">
          ${row}
         </c:forEach>

它似乎也没有工作, 注 - $ {applicationScope [envList [&#34; AMEX&#34;]]} - &gt;返回hashmap值(其中AMEX是一个帐户)但是当我在这里使用变量时出现问题

以前有人遇到过这样的问题吗?我更多的是JSP的新手,非常感谢任何形式的帮助..

1 个答案:

答案 0 :(得分:0)

您的表达式尝试使用列表对象作为applicationScope变量的键而不是参数值。您需要先从applicationScope中获取地图,然后才能从地图中获取帐户。

${applicationScope['envList'][param.acno]}