Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将数据从JSP传递到servlet_Java_Jsp_Servlets_Javabeans - Fatal编程技术网

Java 将数据从JSP传递到servlet

Java 将数据从JSP传递到servlet,java,jsp,servlets,javabeans,Java,Jsp,Servlets,Javabeans,我通过jsp将数据以以下方式传递到servlet: <a href="DetyraServlet?action=listDetyra&firstName=<c:out value="${user.firstName}"/>">Something</a> 因此,我从bean类中传递firstName参数(如果我是正确的话)。现在我想通过session.getAttribute(“用户名”)传递firstName; 所以我想这样做: <%

我通过jsp将数据以以下方式传递到servlet:

<a href="DetyraServlet?action=listDetyra&firstName=<c:out value="${user.firstName}"/>">Something</a>  

因此,我从bean类中传递firstName参数(如果我是正确的话)。现在我想通过session.getAttribute(“用户名”)传递firstName; 所以我想这样做:

<%  
    String user = (String) session.getAttribute("user");  
%>  

然后

<a href="DetyraServlet?action=listDetyra&firstName="<%=user%>">Something</a>  

但是当我尝试这个时,我会出错。谁能告诉我我的缺点是什么吗?

用这个

删除了额外的“(双引号)

如注释所述,您不需要将会话变量传递给您自己的servlet(同一服务器)。您可以在servlet代码本身中执行session.getAttribute。

使用此命令

删除了额外的“(双引号)


如注释所述,您不需要将会话变量传递给您自己的servlet(相同的服务器)。您可以在servlet代码本身中执行session.getAttribute

您会遇到哪些错误?如果会话中有“user”属性,为什么要在请求中传递它?您的意图毫无意义,并且使您的应用程序变得脆弱:恶意用户可以删除数据并更改查询字符串中的用户名,这可以通过Burp Suite等代理工具轻松完成。最好的解决方案是不通过queryString never传递会话数据。您会遇到哪些错误?如果会话中有“user”属性,为什么要在请求中传递它?您的意图毫无意义,并且使您的应用程序变得脆弱:恶意用户可以删除数据并更改查询字符串中的用户名,这可以通过Burp Suite等代理工具轻松完成。最好的解决方案是永远不要通过queryString传递会话数据。代码仍然不起作用。但是谢谢你,因为你给了我一个通过servlet实现的想法:)代码仍然不起作用。但谢谢你,因为你给了我一个通过servlet实现的想法:)