我在网上找到个例子, 仿照做. 静态的没有问题. 但动态的就出来问题了. 各位帮忙看看问题怎么解决呢.Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: Cannot find bean: "list" in any scope
Action相关代码:public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response) {
        ModelListForm modelListForm = (ModelListForm) form;
        
        List<Objects> modelList ;  
        modelList = modelMgr.getAllModelNames();
        request.setAttribute("list", modelList);      
        return mapping.getInputForward();
    }Objects类里面有 id 和 name两个属性. 也有相关的 getter, setter方法.
ActionForm相关代码:private String select;
public String getSelect() {
        return select;
    }
public void setSelect(String select) {
        this.select = select;
    }JSP相关代码:
<html:form action="/modelList.do">
                        <html:submit />   
                        <html:select property="select">
                        <htmlptionsCollection name="list" label="name" value="id" />
                        </html:select>
                        
                    </html:form>struts配置文件相关:
    <action
      attribute="modelListForm"
      input="/pages/modelBody.jsp"
      name="modelListForm"
      path="/modelList"
      scope="request"
      />网上那个例子说, 如果直接在地址栏输入...modelList.do而不是/pages/modelBody.jsp就不会有这个问题.   但我想先读入页面, 然后按submit后, 再读入动态数据. 应该如何解决呢?

解决方案 »

  1.   

     但我想先读入页面, 然后按submit后, 再读入动态数据.
    (#*$&(#@*$(#$&*(@
    他是直接走一个servlet你是想显示页面
    那你按他说的到form里面加个list的bean吧
      

  2.   

    <logic:present name="list">
    <html:select property="select">
                            <htmlptionsCollection name="list" label="name" value="id" />
                            </html:select> 
    </logic:present>
      

  3.   

    这是什么意思呢?那个Form里面加 list的bean?
      

  4.   

    这么做只是判断是不是存在 list属性吧? 但是这个问题现在是 list就不在 这个scope里面, 应当如何解决呢?