我有兩個觀點:的Spring Portlet MVC:轉發請求參數來模擬
- 顯示一些常用信息有關的實體
- 顯示更多的細節關於這個實體
第二種觀點有鏈接回第一個。要創建鏈接我需要一些信息,可以說兩個ID(「id1」和「id2」)。這些ID通過請求參數傳遞給第二個視圖的控制器。
要在第二個視圖中創建反向鏈接,我必須將請求參數轉發給模型manualy。這不是很方便。
有沒有辦法自動做這個轉發?
這裏的示例:
鏈接到細節在第一視圖中:
<portlet:renderURL var="detailsUrl">
<portlet:param name="action" value="showDetails" />
<portlet:param name="id1" value="${entity.id1}" />
<portlet:param name="id2" value="${entity.id2}"/>
</portlet:renderURL>
<a href="${detailsUrl}">Details</a>
Render方法在第二控制器:
@RenderMapping(params = "action=showDetails")
public String showDetails (
@RequestParam("id1") int id1,
@RequestParam("id2") int id2,
Model model) {
// The current unconvenient approach
model.addAttribute("id1", id1);
model.addAttribute("id2", id2);
return "showDetails";
}
在返回鏈路第二視圖:
<portlet:renderURL var="entityUrl">
<portlet:param name="action" value="showEntity" />
<portlet:param name="id1" value="${id1}" />
<portlet:param name="id2" value="${id2}"/>
</portlet:renderURL>
<a href="${entityUrl}">Back</a>
我在互聯網上搜索了houres,發現了一些我錯過的技巧。但我唯一發現的是:「春天爲你自動服用」。但我無法證實這一點。
感謝您的幫助......
如果答案是不可能的話,那對我來說就沒問題了。 – scheffield 2010-11-24 14:19:19