各位大哥帮忙看一下问题在哪程序目的:jsp中接收Action的赋值。相关代码如下:1.AreaAction.java中赋值
Collection coll = new ArrayList();
coll = db.select(..);
if (coll == null || coll.isEmpty())
{return actionMapping.findForward("fail");
}else{
request.setAttribute("Area", coll);
return actionMapping.findForward("success");
}2.jsp4.jsp中获取 Area的值
<logic:iterate id="area" name="Area" type="com.cargo1.model.Area" scope="request">
<tr valign="top" bgcolor="#FFFFFF">
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="name" filter="true"/></td>
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="resume" filter="true"/></td>
</tr>
</logic:iterate>3.struts-config.xml配置action-mapping<action-mappings type="org.apache.struts.action.ActionMapping">
<action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false" scope="request">
<forward name="success" path="/jsp4.jsp" redirect="true" />
</action><action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false">
<forward name="fail" path="/jsp1.jsp" redirect="true" />
</action>
</action-mappings>问题:运行jsp4.jsp时从request中找不到Area,错误提示如下:
“javax.servlet.ServletException: Cannot find bean Area in scope null”那位大哥帮帮忙给小弟解释一下,万分感谢
Collection coll = new ArrayList();
coll = db.select(..);
if (coll == null || coll.isEmpty())
{return actionMapping.findForward("fail");
}else{
request.setAttribute("Area", coll);
return actionMapping.findForward("success");
}2.jsp4.jsp中获取 Area的值
<logic:iterate id="area" name="Area" type="com.cargo1.model.Area" scope="request">
<tr valign="top" bgcolor="#FFFFFF">
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="name" filter="true"/></td>
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="resume" filter="true"/></td>
</tr>
</logic:iterate>3.struts-config.xml配置action-mapping<action-mappings type="org.apache.struts.action.ActionMapping">
<action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false" scope="request">
<forward name="success" path="/jsp4.jsp" redirect="true" />
</action><action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false">
<forward name="fail" path="/jsp1.jsp" redirect="true" />
</action>
</action-mappings>问题:运行jsp4.jsp时从request中找不到Area,错误提示如下:
“javax.servlet.ServletException: Cannot find bean Area in scope null”那位大哥帮帮忙给小弟解释一下,万分感谢
解决方案 »
- 关于Ireport报表问题
- 想找一个好用的HTML的在线编辑框的控件,JS的。
- 关于用JSP下载文件的问题
- 表单提交到iframe后 隐藏div问题
- 求 精通Java Web整合开发(附光盘JSP+AJAX+Struts+Hibernate)/Java开发专家 附书源码下载
- 关于bean的问题,请大家帮帮忙
- Socket做网页上传文件...无法得到结束标志
- 怎么在JSP中把Excle里的数据写到数据库中去?
- 那位大哥能帮我完整的翻译一下这段代码~小弟不胜感激~谢谢~
- 急求jb7的注册码
- 100分立即相送,请问servlet是如何根据url字符串判定类的?在线等待
- 面试题:请描述出与之等效的Java语句??
coll类型为Collection <logic:iterate id="area" name="Area" type="com.cargo1.model.Area" scope="request">
接收的类型为:com.cargo1.model.Area
不是这个原因啊,请再帮忙想想办法。
运行action.do才会跳转到这啊。
“javax.servlet.ServletException: Cannot find bean Area in scope null”页面用 equal 或 present 标签加个判断
名是要对应的.java是分大小写的.
然后你:request.setAttribute("Area", coll);
之后又没在页面中把它取出来:
String Area = (String) request.getAttribute("Area");
所以在页面中没有这个变量的存在,所以取不到值.
<tr valign="top" bgcolor="#FFFFFF">
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="name" filter="true"/></td>
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="resume" filter="true"/></td>
</tr>
</logic:iterate>
<action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false" scope="request">
<forward name="success" path="/jsp4.jsp" />
</action><action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false">
<forward name="fail" path="/jsp1.jsp" />
</action>
<tr valign="top" bgcolor="#FFFFFF">
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="name" filter="true"/></td>
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="resume" filter="true"/></td>
</tr>
</logic:iterate>
<action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false" scope="request">
<forward name="success" path="/jsp4.jsp" />
</action><action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false">
<forward name="fail" path="/jsp1.jsp" />
</action>
这样也不行啊
coll = db.select(..);
if (coll == null || coll.isEmpty())
{return actionMapping.findForward("fail");
}else{
request.setAttribute("Area", coll);
return actionMapping.findForward("success");
}2.jsp4.jsp中获取 Area的值
<logic:iterate id="area" name="Area" scope="request">
<tr valign="top" bgcolor="#FFFFFF">
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="name" /></td>
<td height="20" align="center" bgcolor="#FFFFFF"><bean:write name="area" property="resume" /></td>
</tr>
</logic:iterate>3.struts-config.xml配置action-mapping<action-mappings type="org.apache.struts.action.ActionMapping">
<action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false" scope="request">
<forward name="success" path="/jsp4.jsp" />
</action><action path="/areaAction" type="com.cargo1.control.AreaAction" validate="false">
<forward name="fail" path="/jsp1.jsp" />
</action>
</action-mappings>
你这么改
coll里面装的是Area对象?
redirect="true"
改为false应该就可以了