这是我的情景。我有这个jsp表单:
welcome.jsp
<div class="ajax-wrap" style="display: block; height:100%;">
<p class="overlay_title">
<%-- <span><%=request.getAttribute("mes_add_pageTitle")%></span> --%>
<% String userlabel=(String)request.getAttribute("mes_add_pageTitle");%>
</p>
</div>
我知道这是我的WelcomeServlet.java:
protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String UsernameLabel="passing value";
request.setAttribute("mes_add_pageTitle",UsernameLabel); //Setting USernameLabel to mes_add_pageTitle
RequestDispatcher rd=request.getRequestDispatcher("/welcome.jsp");
rd.forward(request,response); //forwarded to welcome.jsp
}
我的问题是为什么我在jsp中获得null值。它应显示Username Label
但它不起作用..我的错误是什么,请帮助。注意:Username Label
是一个标签,因此我不需要获取或发布。感谢
答案 0 :(得分:3)
的index.jsp:
<form action=Servlet1">
<input type="submit" value="submit" name="submit1">
</form>
在Servlet中,
让我们考虑一下, Servlet1.java
if(request.getParameter("submit1")!=null)
{
String UsernameLabel="passing value";
request.setAttribute("mes_add_pageTitle",UsernameLabel); //Setting UsernameLabel to mes_add_pageTitle
RequestDispatcher rd=request.getRequestDispatcher("/welcome.jsp");
rd.forward(request,response); //forwarded to welcome.jsp
的welcome.jsp:
<% String userlabel=(String)request.getAttribute("mes_add_pageTitle"); %>
Value is: <%=userlabel%>
希望这可以帮助你...
答案 1 :(得分:0)
在JSP中,需要在sriptlet(&lt; %%&gt;)标记之外声明mes_add_pageTitle变量。
声明它像&lt;%!字符串mes_add_pageTitle = null%&gt;
答案 2 :(得分:0)
调度时使用
req.getRequestDispatcher("/welcome.jsp").forward(req, resp);
在jsp中检索时使用
<%=request.getAttribute("mes_add_pageTitle")%>