2014-06-30 82 views
1

有沒有一種方法可以將參數從servlet發送到jsp,而無需將瀏覽器重定向到該頁面?從servlet轉發參數到jsp

RequestDispatcher disp = request.getRequestDispatcher("shoppingCart.jsp"); 
disp.forward(request, response); 
+1

把session範圍內的價值和獲取價值在任何JSP頁面 –

+2

你剛剛做了。在disp.forward(req,res)之前將屬性設置爲請求。使用req.getAttribute(..)從請求(在您要轉發的JSP內)訪問它; FYI請求調度程序不會向Web瀏覽器發送響應(當您調度時請注意您的URL,它不會更改);因此沒有重定向.. CHEERS! – ppuskar

回答

1

那麼您可以設置的屬性來響應對象和轉發請求(與servlet或servlet來JSP或反之亦然內部通信的情況下使用),則可以爲實現這一點:

 request.setAttribute("someKey","someValue"); 

您還可以使用session範圍內共享Servlet和JSP的屬性是這樣的:

 Http session = request.getSession(); 
    session.setAttribute("someKey","someValue"); 
2

可以有如下的一種方法:

RequestDispatcher disp = request.getRequestDispatcher("shoppingCart.jsp"+"?myParam=myValue"); 
    disp.forward(request, response);  

如果你是罰款「GET」方法,那麼你就可以解決這個問題具有附加參數。

+0

值得一提的是,如果你有任何特殊字符,你會想要url參數編碼參數:) –