2011-10-19 66 views
0

說struts 2的valuestack中有一個值;當我們編寫jsp時,我們不知道這個值的確切變量名是什麼,但我們只知道這個值的變量名保存在另一個變量名中,比如說「XXX」。Struts 2如何在valuestack上使用動態名稱引用一個值

問題是如何通過使用「XXX」來獲得價值,我嘗試這個,但它不工作。

<s:property value="${XXX}"/> 
+0

是否沒有辦法重構您的操作以標準化變量的保存方式?這將是一個更簡單的解決方案。 –

回答

0

該操作將視圖的數據封送,因此它應該執行處理以獲取所需的數據。從它的聲音來看,這聽起來像是行動可以將適當的數據收集到地圖中。

但是,有些奇怪的情況,你可能有一個。但在解決這個問題之前,如果你只有變量的名稱,那麼它可以被假設爲真正的變量?它是否在價值堆棧中(如果是的話,是什麼阻止你直接訪問它)?如果它不在值棧上,則需要啓用靜態方法評估並創建適當的靜態方法,因爲只提供了變量的名稱並假定它是java bean的屬性,那麼您需要使用反射或apache beanutils。

總的來說,最好是在你的觀點的行動中得到你需要的東西。

還要在你的jsp中設置一個值,你已經知道了struts2的set標籤(這可能不是你想要的,但有一個小的機會讓它包含它)?請參閱:http://struts.apache.org/2.2.3.1/docs/set.html

相關問題