我有使用struts2 <s:set>
標籤在頁面上創建的hashmap。它看起來是這樣的使用Struts 2訪問HashMap
<s:set var="mymap" value="#request.mymap"/>
在頁面中的某個時候,我需要從基於密鑰的HashMap中的值,我想用OGNL做到這一點。
該密鑰是基於某些邏輯生成的,我使用另一個<s:set>
標記存儲該邏輯。像這樣的東西
<s:set var="mykey" value="1">
我需要使用此密鑰從哈希映射中獲取值。我需要顯示它。
我該如何簡單地在hashmap上調用get函數?
我想這
<s:property value="#mymap[#mykey]"/>
這
<s:property value="#mymap[%{#mykey}]"/>
這
<s:property value="%{#mymap[%{#mykey}}]"/>
第三個顯然沒有因爲嵌套問題的工作。
但是,由於值屬性的處理方式,同樣的嵌套邏輯也適用於第二種情況。然而,似乎沒有爲我工作。
這裏的問題是我的鑰匙是未知的。它是基於某種模式的動態生成的字符串。我需要使用這個動態密鑰訪問存儲在hashmap中的對象。由於無法嵌套ognl,我正在修復。
我想這個問題很簡單。我幾乎覺得我明白了,但不知怎的,解決方案無法解決我的問題。
http://struts2-java.blogspot.sg/2008/09/ognl-4.html – Cid 2012-10-12 09:47:54