页面之间传值的问题:路过看一看啊 谢谢!

scorpionyjg 2004-09-05 10:48:37
一个页面A 对应一个form(a) 和bean(a);
另一个页面B 也对应一个form(b) 和bean(b). 是不同的form 和bean

我想取页面A中的某些字段的值到页面B中

首先我在bean(b)中定义了所需字段的名字

然后通过一个action将值从页面A上取出(这一步成功了)
action中也看到了已将值赋给了form(b),和bean(b) success 后跳转到页面B

但页面B 并没有得到值? 这是怎么回事?

如果是同一个form 和bean 的话是成功的,是不是不同的form和bean 之间传值要注意些什么?
请大家帮忙啊 不胜感激!
...全文
132 点赞 收藏 13
写回复
13 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zero_3 2004-09-05
什么完了!没开口就....
回复
scorpionyjg 2004-09-05
就是用一个action传的呀

try{
String id =null;
String checkidChecked =null;

checkidChecked =request.getParameter("type");//从页面A获得参数。
String arrayID[] = checkidChecked.split(",");
UtilizeInfoForm uform = (UtilizeInfoForm) form;
UtilizeInfoDao utilDao = (UtilizeInfoDao) domainLogic.getDAO(
"UtilizeInfoDao");
for(int i=0;i < arrayID.length ; i++){
id =(String) arrayID[i];
UtilizeInfo utilInfo=utilDao.getUtilizeInfoByFileID(id);//通过xml从数据库中取值(成功)
uform.setUtilizeInfo(utilInfo);
request.setAttribute("UtilizeInfoForm", uform);
}
}catch(Exception e){
throw new java.lang.UnsupportedOperationException("Method perform() not yet implemented.");
}
return mapping.findForward("success");

}

}

我跟踪了 :request.setAttribute("UtilizeInfoForm", uform); 直到这里值都是有的 然后就是 return mapping.findForward("success"); 了 再往下不知道盖怎么跟踪了?跳到页面上就没值了。。。不是直接传到页面上了吗?还有中转站?
回复
alaal 2004-09-05
还是没明白你的意思

你多设几个断点跟踪一下,看看哪儿传丢了
回复
scorpionyjg 2004-09-05
to:alaal 谢谢你的回帖,我的源码你再看看? 鞠躬 周末愉快
回复
alen_zhao 2004-09-05
是不是没有把form(b)和bean(b)放入Request里面去,多检查检查。
回复
scorpionyjg 2004-09-05
部分源码:
try{
String id =null;
String checkidChecked =null;

checkidChecked =request.getParameter("type");//从页面A获得参数。
String arrayID[] = checkidChecked.split(",");
UtilizeInfoForm uform = (UtilizeInfoForm) form;
UtilizeInfoDao utilDao = (UtilizeInfoDao) domainLogic.getDAO(
"UtilizeInfoDao");
for(int i=0;i < arrayID.length ; i++){
id =(String) arrayID[i];
UtilizeInfo utilInfo=utilDao.getUtilizeInfoByFileID(id);//通过xml从数据库中取值(成功)
uform.setUtilizeInfo(utilInfo);
request.setAttribute("UtilizeInfoForm", uform);
}
}catch(Exception e){
throw new java.lang.UnsupportedOperationException("Method perform() not yet implemented.");
}
return mapping.findForward("success");

}

}
以上为从页面A中取值并放到form(b)和bean (b)中 成功了。


跳转到页面B :页面B上也有action

UtilizeInfoDao utilDao = (UtilizeInfoDao) domainLogic.getDAO(
"UtilizeInfoDao");

String applyID = "";
UtilizeInfoForm uform = (UtilizeInfoForm) form;
UtilizeInfo uInfo = uform.getUtilizeInfo();
String jspForward="success";
String fName="";
fName= uform.getFunctionName();
utilDao.addApplybyFileID(uInfo); //这是另外的动作(操作数据库的与页面获得值应该没关系的)
return (mapping.findForward(jspForward));


页面B上一些代码:

<form name="UtilizeInfoForm" method="post" action="/aum/addUsageRegister.do">
<input type="hidden" name="utilizeInfo.file_id" value="">
<input type="hidden" name="functionName" value="">
<table width="95%" border="0" cellpadding="2" cellspacing="1" bgcolor="#CCCCCC">

<tr bgcolor="#FFFFFF">
<td width="16%" height="22">利用人姓名</td>
<td width="16%">
<input type="text" name="utilizeInfo.name" maxlength="10" size="10" value="<%=name%>"></td>
<td width="16%">文件题名</td>
<td width="16%"><input type="text" name="utilizeInfo.file_title" maxlength="20" size="30" value=""></td>
</tr>

......

file_id 和file_title 等是传过来的值 :可是都是空的,传不过来,也没报错。迷茫啊。。。
回复
alaal 2004-09-05
没看明白你什么意思

和form没有关系,你把要传的值放在hidden中,然后提交到b,在b中用request.getParameter("...")来获值
回复
leoer 2004-09-05
从A中取出后先传 组B再调用Bean就可以,此是返回值是给B,你的方法是把返回值给了A,不是B
回复
朋友别哭 2004-09-05
hehe
回复
shaopin 2004-09-05
那是因为你这个转发是相当于redirect,而不是forward
回复
scorpionyjg 2004-09-05
页面上要get 才行的:同一from和bean就不用.^_^,结果出来了,可还真不太明白:继续学习啊 ^_^:谢谢回帖,接分!
回复
wanglin824 2004-09-05
up~
回复
scorpionyjg 2004-09-05
页面上这样写对不对(理论上)?
<%@ page import="com.sunyard.hgam.persistence.dao.beans.aum.UtilizeInfo"%>
<%@ page import="com.sunyard.hgam.presentation.form.aum.UtilizeInfoForm"%>

UtilizeInfoForm uform=null;
UtilizeInfo utilInfo=null;
uform=(UtilizeInfoForm) request.getAttribute("UtilizeInfoForm");
utilInfo=uform.getUtilizeInfo();
file_id=utilInfo.getFile_id();

^_^:刚刚试验成功了!谢谢以上各位啊!
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2004-09-05 10:48
社区公告
暂无公告