主题:iterate标签问题
这是jsp页面这样写的时候报的错误:
<logic:iterate id="numall" name="numall" scope="request">
<tr>
<td>
${numall.callerno}
</td>
<td>
jzk
</td>
<td>
jzk
</td>
</tr>
</logic:iterate>
2007-12-30 14:33:24 ApplicationDispatcher[/fxsql] Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.el.ELException: The "." operator was supplied with an index value of type "java.lang.String" to be applied to a List or array, but that value cannot be converted to an integer.
at org.apache.commons.el.Logger.logError(Logger.java:481)
at org.apache.commons.el.Logger.logError(Logger.java:498)
at org.apache.commons.el.Logger.logError(Logger.java:566)
at org.apache.commons.el.ArraySuffix.evaluate(ArraySuffix.java:227)
at org.apache.commons.el.ComplexValue.evaluate(ComplexValue.java:145)
at org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:263)
at org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:190)
at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:899)
at org.apache.jsp.telnumdo_jsp._jspx_meth_logic_present_1(telnumdo_jsp.java:208)
at org.apache.jsp.telnumdo_jsp._jspx_meth_html_html_0(telnumdo_jsp.java:114)
at org.apache.jsp.telnumdo_jsp._jspService(telnumdo_jsp.java:63)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.jzk.fx.filter.EncodingFilter.doFilter(EncodingFilter.java:22)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:702)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:644)
at java.lang.Thread.run(Thread.java:595)
若jsp页面这样写的时候没错误
<logic:iterate id="numall" name="numall" scope="request">
<tr>
<td>
jzk
</td>
<td>
jzk
</td>
<td>
jzk
</td>
</tr>
</logic:iterate>
我想总是我的标签写的出了问题了吧
实现类我是这样写的
public List queryNUMAll(XgsxCallLog xgsxCallLog) throws Exception {
List numall = new ArrayList();
String hql = "SELECT callerno,calleeid,startTime,endTime,endTime-startTime as offset FROM XgsxCallLog WHERE callerno=?";
Query q = super.getSession().createQuery(hql);
q.setString(0, xgsxCallLog.getCallerno());
numall = q.list();
return numall;
}
action里面是这样
public ActionForward seltelnum(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
Xgsx_Call_LogForm xgsx_Call_LogForm = (Xgsx_Call_LogForm) form;
XgsxCallLog xgsxCallLog=new XgsxCallLog();
xgsxCallLog.setCallerno(xgsx_Call_LogForm.getTelnum());
try {
List numall=this.ixgsx_call_logdao.queryNUMAll(xgsxCallLog);
request.setAttribute("numall", numall);
return mapping.findForward("seltelnumsuccess");
} catch (Exception e) {
e.printStackTrace();
request.setAttribute("flagseltelnum", "error");
return mapping.findForward("seltelnumfailure");
}
}
有高手帮忙解决下吗谢谢
<logic:iterate id="numall" name="numall" scope="request">
<tr>
<td>
${numall.callerno}
</td>
<td>
jzk
</td>
<td>
jzk
</td>
</tr>
</logic:iterate>
2007-12-30 14:33:24 ApplicationDispatcher[/fxsql] Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.el.ELException: The "." operator was supplied with an index value of type "java.lang.String" to be applied to a List or array, but that value cannot be converted to an integer.
at org.apache.commons.el.Logger.logError(Logger.java:481)
at org.apache.commons.el.Logger.logError(Logger.java:498)
at org.apache.commons.el.Logger.logError(Logger.java:566)
at org.apache.commons.el.ArraySuffix.evaluate(ArraySuffix.java:227)
at org.apache.commons.el.ComplexValue.evaluate(ComplexValue.java:145)
at org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:263)
at org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:190)
at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:899)
at org.apache.jsp.telnumdo_jsp._jspx_meth_logic_present_1(telnumdo_jsp.java:208)
at org.apache.jsp.telnumdo_jsp._jspx_meth_html_html_0(telnumdo_jsp.java:114)
at org.apache.jsp.telnumdo_jsp._jspService(telnumdo_jsp.java:63)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:298)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1063)
at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:386)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:229)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.jzk.fx.filter.EncodingFilter.doFilter(EncodingFilter.java:22)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:702)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:644)
at java.lang.Thread.run(Thread.java:595)
若jsp页面这样写的时候没错误
<logic:iterate id="numall" name="numall" scope="request">
<tr>
<td>
jzk
</td>
<td>
jzk
</td>
<td>
jzk
</td>
</tr>
</logic:iterate>
我想总是我的标签写的出了问题了吧
实现类我是这样写的
public List queryNUMAll(XgsxCallLog xgsxCallLog) throws Exception {
List numall = new ArrayList();
String hql = "SELECT callerno,calleeid,startTime,endTime,endTime-startTime as offset FROM XgsxCallLog WHERE callerno=?";
Query q = super.getSession().createQuery(hql);
q.setString(0, xgsxCallLog.getCallerno());
numall = q.list();
return numall;
}
action里面是这样
public ActionForward seltelnum(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
Xgsx_Call_LogForm xgsx_Call_LogForm = (Xgsx_Call_LogForm) form;
XgsxCallLog xgsxCallLog=new XgsxCallLog();
xgsxCallLog.setCallerno(xgsx_Call_LogForm.getTelnum());
try {
List numall=this.ixgsx_call_logdao.queryNUMAll(xgsxCallLog);
request.setAttribute("numall", numall);
return mapping.findForward("seltelnumsuccess");
} catch (Exception e) {
e.printStackTrace();
request.setAttribute("flagseltelnum", "error");
return mapping.findForward("seltelnumfailure");
}
}
有高手帮忙解决下吗谢谢