0

我想通过使用 servlet 向用户隐藏 url 数据,但我没有得到任何解决方案。请任何人解决这个问题

这里我使用了三个文件。

首先,我使用 jsp 文件中的 java 脚本调用 servlet。这是 javascript 代码:

报告_arb.jsp:

<html>
...
<script>
 ....
 ..

function generateReport(){
if(role=="dg")
{ 

    var depts=win.depts.value;

    var usercode=win.users.options[win.users.selectedIndex].value;

    if(usercode=="0")
    {

        return false;
    }

}
else if(role=="depthead")
{ 

    var usercode=win.users.options[win.users.selectedIndex].value;

    if(usercode=="0")
    {

        return false;
    }

}else if(role=="us"){

    var dg=win.dg.value;

    var depts=win.depts.value;

    var usercode=win.users.options[win.users.selectedIndex].value;

    if(usercode=="0")
    {

        return false;
    }


}
else
{alert("user");

    var usercode=win.logusers.value;
    alert(usercode);

}


    url="RedirectServlet?&FD="+FD+"&TD="+TD+"&actionid="+status+"&usercode="+usercode+"&action=reports"+"";
    window.open(url, '_blank',   'toolbar=no,menubar=no,width=300,height=400,resizable=no,scrollbars=no');


    return true;
 }
 }
 </script>
....
...
...
..

 <button style="width: 135px; height: 25px;cursor:hand;" onClick="generatereport();">
.....

</html>

其次,我将在 url 中传递给 servlet 的值:

重定向Servlet.java

               //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").forward(request,     response);

第三件事是将上述值放入 jsp 中:

showReport_arb.jsp:

 String FD=request.getAttribute("FD").toString();
 String dtArray[]=FD.split("-");
 FD=dtArray[1]+"-"+dtArray[0]+"-"+dtArray[2];
  / /System.out.println("FD is---"+FD);
 String TD=request.getAttribute("TD").toString();
 String dtArray1[]=TD.split("-");
 TD=dtArray1[1]+"-"+dtArray1[0]+"-"+dtArray1[2];
//int actionto=Integer.parseInt(request.getAttribute("actionto"));
 int actionid=Integer.parseInt(request.getAttribute("actionid").toString());
  int usercode=Integer.parseInt(request.getAttribute("usercode").toString());
4

1 回答 1

2

尝试POST在表格中使用,而不是GET

<form  method="post" ...>

doPost()并在 servlet 类中覆盖

于 2013-05-29T12:45:17.503 回答