Action:public ActionForward queryByNum(ActionMapping mapping, ActionForm form, 
HttpServletRequest request, HttpServletResponse response) { 
String proNumber = request.getParameter("proNumber"); 
Business bs = new Business(); 
try { 
bs = BusinessDAOFactory.getBusinessDAOInstance().queryByNum(proNumber); 
List <Business> list = new ArrayList <Business>(); 
list.add(bs); 
request.setAttribute("buqbn", list); 


catch(Exception e) { 
System.out.println(e); 

return mapping.findForward("buqbn"); 
} ----------------------------------------------
再提点小建议,你完全没有必要把查询全部和根据Num查询做成两个ACTION,也没有必要做到两个不同页面显示
你没有发觉,两个ACTION之间很相似吗?而且两个JSP几乎也相同?

解决方案 »

  1.   

    <logic:iterate id="queryByNum" name="buqbn" scope="request"> 你上面的标签中少了个type属性,你加上先试试
      

  2.   

    这个和type没有关系的 好象是取数据错了  代码太长了:)
      

  3.   

    try { 
    bs = BusinessDAOFactory.getBusinessDAOInstance().queryByNum(proNumber); 
    request.setAttribute("buqbn", list); 

    看看你是用什么存的,页面你是用什么取的,
     <logic:present name="buqa" scope="request"> 
      

  4.   


    list.add(bs); try { 
    bs = BusinessDAOFactory.getBusinessDAOInstance().queryByNum(proNumber); 
    request.setAttribute("buqbn", list); 
    } 改成try { 
    bs = BusinessDAOFactory.getBusinessDAOInstance().queryByNum(proNumber); 
    list.add(bs); 
    request.setAttribute("buqbn", list); 

      

  5.   

    request.setAttribute("buqbn", list); 你存在request里面,
    肯定用的是客户端跳转,,
    换成session范围试试看..