在javascript中调用servlet doPost方法

Calling servlet doPost method in the javascript

本文关键字:doPost 方法 servlet 调用 javascript      更新时间:2023-09-26

我想通过使用javascript代码调用Servlet doPost()方法,但我得到http 405(http方法GET不支持这个URL)异常。

下面是我的javascript代码:

  url="RedirectServlet?&FD="+FD+"&TD="+TD+"&actionid="+status+"&usercode="+usercode+"&action=reports"+"";

RedirectServlet.java:

 protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException
        {
 if(action.equals("reports")){
        System.out.println("inside reports");
        //Getting values from Reports_arb.jsp
        String Fromdate=request.getParameter("FD");
        String Todate=request.getParameter("TD");
        String status=request.getParameter("actionid");
        String usercode=request.getParameter("usercode");
        //placing given values in a session 
        request.setAttribute("FD", Fromdate);
        request.setAttribute("TD", Todate);
        request.setAttribute("actionid", status);
        request.setAttribute("usercode", usercode);

        //Redirecting to showReport_arb.jsp
        //response.sendRedirect("showReport_arb.jsp");
        request.getRequestDispatcher("showReport_arb.jsp").include(request, response);
    }  
  }  

看到你的URL,你就是sending,就是data along with the URL。这是servlet get的要求。

因此URL正在尝试访问doGet,但servlet中没有doGet的实现导致问题。

编辑

使用它来访问servlet doPost

<form ...   method="post">...</form>