没看明白你什么意思和form没有关系,你把要传的值放在hidden中,然后提交到b,在b中用request.getParameter("...")来获值

解决方案 »

  1.   

    部分源码:
     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 等是传过来的值 :可是都是空的,传不过来,也没报错。迷茫啊
      

  2.   

    是不是没有把form(b)和bean(b)放入Request里面去,多检查检查。
      

  3.   

    to:alaal 谢谢你的回帖,我的源码你再看看? 鞠躬 周末愉快
      

  4.   

    就是用一个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"); 了 再往下不知道盖怎么跟踪了?跳到页面上就没值了不是直接传到页面上了吗?还有中转站?
      

  5.   

    页面上这样写对不对(理论上)?
    <%@ 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();^_^:刚刚试验成功了!谢谢以上各位啊!
      

  6.   

    页面上要get 才行的:同一from和bean就不用.^_^,结果出来了,可还真不太明白:继续学习啊 ^_^:谢谢回帖,接分!
      

  7.   

    那是因为你这个转发是相当于redirect,而不是forward
      

  8.   

    从A中取出后先传 组B再调用Bean就可以,此是返回值是给B,你的方法是把返回值给了A,不是B