[英]How to pass message from servlet to jsp?
我想將一個status參數從servlet傳遞給jsp。 我正在發送它
response.sendRedirect("newpage.jsp?status=yes");
如果status = yes
則在<div>
顯示成功消息,然后將status設置為null
。 但是當newpage.jsp
第一次加載時, status的值為null
並且它給出了空指針異常 。
會話也會發生同樣的事情。
<%
String status = request.getParameter("status");
System.out.println("Check Successful of Status"+status);
if (status.equalsIgnoreCase("yes")) {
System.out.println("Check Successful of Status");
%>
<div style="color: green;" align="center">Selected tenant approved successfully</div>
<script type="text/javascript"> window.location.href = window.location.href.split("?")[0]; </script>
<%
request.setAttribute("status1", null);
%>
request.setAttribute("status1", yourstatus);
getServletContext().getRequestDispatcher("yourpageyouwanttosend.jsp").forward(request, response);
您的視圖<%= request.getAttribute("status1") %>
在Servlet中你可以使用
request.setAttribute("status","yes")
在jsp中,您可以使用
request.getAttribute("status");
是的,我錯過了這一點
以上你需要使用
RequestDispatcher rd = request.getRequestDispatcher("somefile.jsp");
rd.forward(request,response);
如果你想使用response.sendRedirect("somefile.jsp")
,
你可以在會話中將變量設置為
HttpSession session = request.getSession(false);
session.setAttribute("status","yes")
然后把它取回來
session.getAttribute("status")
。
一旦使用,你可以刪除它
session.removeAttribute("status")
您正在使用status
作為參數名稱,並且您正在比較JSP中的status1
if (status1.equalsIgnoreCase("yes")) {
注意:
將javacode放在jsp上並不是件好事,切換到JSTL
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.