據我所知,你有一些你想傳遞到下一頁的JavaScript參數。但是,您可以使用PortletSession的APPLICATION_SCOPE來完成此任務,並且可以通過將值放入輸入來解決將JS params轉換爲Java的問題。如果不應該這些輸入瓦爾由用戶進行書面和你把他們從別的地方,你可以隱藏輸入:
在你的JSP:
<form>
<input type="hidden" id="myinput1" name="in1" value="">
<input type="hidden" id="myinput1" name="in2" value="">
</form>
<script>
var a = "avalue";
var b = "bvalue";
document.getElementById("myinput1").value=a;
document.getElementById("myinput2").value=b;
</script>
然後當你提交表單需要。接下來,你就可以在portlet的processAction方法來這樣做:
String a= request.getParameter("in1");
String b= request.getParameter("in2");
PortletSession session = request.getPortletSession();
session.setAttribute("a", a , PortletSession.APPLICATION_SCOPE);
session.setAttribute("b", b , PortletSession.APPLICATION_SCOPE);
在其他portlet中,您可以通過調用
session.getAttribute("a",PortletSession.APPLICATION_SCOPE);
這當然找到它,如果你不能簡單地把它們放在下一頁的網址中。