站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题小女子向各位大侠请教:Struts中向JSP传值 的问题

小女子向各位大侠请教:Struts中向JSP传值 的问题

摘要: 小女子向各位大侠请教:Struts中向JSP传值 的问题


- Get module name for path /querytop.do
- Module name found: default
- Processing a 'POST' for path '/querytop'
- Looking for ActionForm bean instance in scope 'request' under attribute key 'querytopForm'
- Creating new ActionForm instance of type 'com.abc.struts.form.QuerytopForm'
- com.abc.struts.form.QuerytopForm@1c20611
- Storing ActionForm bean instance in scope 'request' under attribute key 'querytopForm'
- Populating bean properties from this request
- BeanUtils.populate(com.abc.struts.form.QuerytopForm@1c20611, {compositor=[Ljava.lang.String;@11c5c88})
- setProperty(com.abc.struts.form.QuerytopForm@1c20611, compositor, [40])
- Convert string '40' to class 'int'
- Using converter org.apache.commons.beanutils.converters.IntegerConverter@ec366a
- setSimpleProperty: Invoking method public void com.abc.struts.form.QuerytopForm.setCompositor(int) with value 40 (class java.lang.Integer)
- Validating input form properties
- No errors detected, accepting inpu
- Looking for Action instance for cla
- Returning existing Action instance
- processForwardConfig(ForwardConfig[name=list,path=/dnsstatus/dns_querytop.jsp,redirect=false,contextRelative=false,module=null])
- servletPath=/dnsstatus/dns_querytop.jsp, pathInfo=null, queryString=null, name=null
- Path Based Forward
- Disabling the response for futher output
以上是日志
我的action部分代码是:
try {
Dns_queryTopBO dqtbo = new Dns_queryTopBO();
int compositor = querytopForm.getCompositor();
ArrayList formlist = (ArrayList) dqtbo.getVOListForPages(0,
compositor);
System.out.print(formlist.size());

request.setAttribute("formlist", formlist);

return mapping.findForward("list");
} catch (Exception e) {
e.printStackTrace();
/**
* 如果编辑操作失败,则定向到失败页面
*/

return mapping.findForward("failure");
}
}
}
JSP页面的代码是:
<%
Collection col=(Collection)request.getAttribute("formlist");
if(col==null || col.isEmpty()){
out.print("参数没有传过来");
}else{
out.print("参数长度为" + col.size());
}
%>
最后提示参数没有传过来


你确定formlist里面有数据吗?


没有数据至少也会是个空值吧!


我不确定formlist里面有没有值啊!顺便问个傻点的问题,怎么确定有没有值啊!


ArrayList formlist = (ArrayList) dqtbo.getVOListForPages(0,
compositor);
在eclipse里断点看一下formlist是什么值,要是这里就没有值,后面就不可能有值了



System.out.print(formlist.size());
后台打印的结果是什么


System.out.print(formlist.size());

不是有这句话么?

看console上面显示的size就知道了.

request.getAttribute("***") 这句话肯定是对的,勿庸置疑了!


对阿,你看控制台打印出的System.out.print(formlist.size());值是多少啊??


肯定是“formlist”没取到值,你用IDE里面在java文件上设个断点,跟踪一下,最好用单步跟踪,看看流程对不


谢谢各位了!在各位的启发下,小女子终于不负众望发现了问题所在,实在是够低级的错误!!拿出来献丑一下!
ArrayList formlist = (ArrayList) dqtbo.getVOListForPages(0,compositor);
ArrayList formlist = (ArrayList)( dqtbo.getVOListForPages(0,compositor));
少加了一对括号,于是乎.....转型错误,formlist 是空值!于是乎.......





我晕
怎么可能是这个问题

(ArrayList) dqtbo.getVOListForPages(0,compositor);

(ArrayList)( dqtbo.getVOListForPages(0,compositor));

这两个绝对是一样的效果!
可是确实是好了!页面上也明明确确的显示出了formlist.size()的值啊!!,等我明天再看看!!


↑返回目录
前一篇: 数字转换
后一篇: 不知道sql语句能不能解决