request.getAttribute在Servlet中返回null [英] request.getAttribute returning null in servlet

查看:691
本文介绍了request.getAttribute在Servlet中返回null的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在jsp中,我编写了以下代码:

In jsp I have written following code:

    <form action="./ssoServlet?from=amount" method="post">
    <%request.setAttribute("formName", "DayCareForm"); %>
    Amount  
     <input type="text" name="amount" id="amount" required >
     <button onclick="dayCarePdf()" type="submit"> Convert to PDF </button>
    </form>

servlet的post方法是:

Post method of servlet is:

@Override
    public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("DoPost method");
        resp.setContentType("text/html");

        if(req.getParameter("from").equals("amount"))
        {
            req.getParameter("amount");

            String form = (String) req.getAttribute("formName");
            System.out.println("Type of form " +req.getAttribute("formName"));
            RequestDispatcher dispature = getServletContext().getRequestDispatcher("/DayCare.jsp");
            dispature.forward(req, resp);
        }
}

但是,该servlet返回的空值是表格类型

However, The servlet is returning null value for type of form

推荐答案

尝试以下代码:

<form action="./ssoServlet" method="post" id="myForm" name="DayCareForm">
Amount  
 <input type="text" name="amount" id="amount" required >
 <input type="hidden" name="formName" value="DayCareForm" />
<button onclick="dayCarePdf()" type="submit"> Convert to PDF </button>
</form>

JavaScript:

function dayCarePdf()
{
    document.getElementById("myForm").submit();

//Rest Code will come here


}

设置一个隐藏字段作为表单名称,您可以通过以下代码访问表单名称.

set a hidden field as form name and you can access form name by below code.

   String formName= request.getParameter ("formName");  // you will get DayCareForm as we set form name

这篇关于request.getAttribute在Servlet中返回null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆