JSP 页面里的POST问题,请高手指点一下,谢谢!

A是服务器,B是客户端。Bpost数据到A可以正常接收,A接收后经过处理后把处理结果自动post到B,问题就出在这里,B接收不到A传送的数据,这是什么原因,请高手指点指点... A是服务器,B是客户端。B post数据到A可以正常接收,A接收后经过处理后把处理结果自动post到B ,问题就出在这里,B接收不到A传送的数据,这是什么原因,请高手指点指点,本人实现想不明白是什么地方有问题,谢谢了!
<%@ page contentType="text/html; charset=GBK" %>
<%

String EncryptMsg=(String)request.getAttribute("key");
String returnUrl=(String)request.getAttribute("url");

%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>发送</title>
</head>
<body topmargin="0" leftmargin="0" scroll="no" rightmargin="0" bottommargin="0">
<form name="frmPost" method="post" action="<%=returnUrl%>">
<input type="hidden" name="EncryptMsg" value="<%=EncryptMsg%>">
</form>

<script language="javascript">
document.forms["frmPost"].submit();
</script>
</body>
</html>
这是A上POST的JSP,参数都是用request.setAttribute("url", url); request.setAttribute("key", key);传递这是没有问题的.B上用request.getParameter("url"); request.getParameter("key");来接收,什么地方有问题吗?
B是客户的服务器.
展开
 我来答
heijianke
2008-12-16 · 超过10用户采纳过TA的回答
知道答主
回答量:36
采纳率:0%
帮助的人:37.9万
展开全部
可能是B中出了问题:
B中用request.setAttribute("url", url); 这种形式传参那么对应着用<jsp:forward/>标签来转发请求,在目标页面(即A)用request.getParameter("url"); 来获得参数;

你可能用了request.sendRedirect(......);那么应该这样传递参数:request.sendRedirect("......?url=http://.....jsp&key=value");
不过这样就成了get方式了

所以建议用第一种
--------------------------------------------------------------
在B中这样写:
<jsp:forward page="a.jsp">
<jsp:param name="url" value="<%=url%>"/>
<jsp:param name="key" value="<%=key%>"/>
</jsp:forward>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友703feee
2008-12-16 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:188
采纳率:0%
帮助的人:116万
展开全部
没搞明白请求响应模型
A是服务器,处理完请求后一般都是返回一个大的文本串,也就是那个超文本,但是接收这个动作是谁呢?是你的浏览器,你根本不用什么A post数据到客户端,对于A来说只是被动的接收请求、处理请求,对于BS开发来说,客户端就是浏览器,就是你所谓的 B
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qman23
2008-12-16 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:161
采纳率:0%
帮助的人:121万
展开全部
A接收后经过处理后把处理结果自动post到B,这个在代码中是怎么实现的?B接收不到A传送的数据,这个接收的代码又是怎么写的呢?

<form name="frmPost" method="post" action="<%=returnUrl%>">
你检查下action的URL是否配置正确了,这里是否确定已经跳转到B中?可以用断点调试一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gyfbest
2008-12-16
知道答主
回答量:43
采纳率:0%
帮助的人:28.9万
展开全部
如果是纯JSP—SERVLET的模式,请将处理后的数据用request.setParameter();设置好,然后再转发时,请不要用重新请求来处理.response.sendRedirect();
应该调用request.getRequestDispatcher("").forward()来重定向需要转发的页面,这样,在JSP页面里通过 request.getParameter(),就能接收到

另外一种方式,通过session来处理
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
w5300840
2008-12-16 · TA获得超过549个赞
知道小有建树答主
回答量:424
采纳率:0%
帮助的人:285万
展开全部
B接收服务器的参数不正确,他细去看一下你的代码?
你不把代码贴出来,怎么分析呀
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式