You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Gekka <ge...@bluezone.no> on 2002/10/22 19:56:59 UTC

Problems with logic:iterate

Hi,

I'm using Struts 1.1b2 and Tomcat 4.1.12 on Windows 2000 and I have some
problems with the logic iterate tag. What I do is that I set a
Collection (HashSet) in the request object inside execute() in an action
and then pass control to a jsp to iterate over the results. Here's what
I do in the jsp:

<logic:iterate id="menuElement" name="items" scope="request"
type="bean.HTMLLink">
	<html:link href="<bean:write name="menuElement" property="url"/>">
		<bean:write name="menuElement" property="caption"/>
	</html:link>
</logic:iterate>

When I hit this code Tomcat tells me:

org.apache.jasper.JasperException: /menu.jsp(6,47)
jsp.error.attribute.noequal
	at
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:94)
	at
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:417)
	at
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:126)
	at org.apache.jasper.compiler.Parser.parseAttribute(Parser.java:169)
	at org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:136)
	at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:723)
	at org.apache.jasper.compiler.Parser.parseElements(Parser.java:808)
	at org.apache.jasper.compiler.Parser.parseBody(Parser.java:836)
	at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:757)
	at org.apache.jasper.compiler.Parser.parseElements(Parser.java:808)
	at org.apache.jasper.compiler.Parser.parse(Parser.java:122)
	at
org.apache.jasper.compiler.ParserController.parse(ParserController.java:199)
	at
org.apache.jasper.compiler.ParserController.parse(ParserController.java:153)
	at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:219)
	at org.apache.jasper.compiler.Compiler.compile(Compiler.java:323)
	at
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:474)
	at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:184)
	at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
	at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:432)
	at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:356)
	at
org.apache.struts.action.ActionServlet.processActionForward(ActionServlet.java:1759)
	at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1596)
	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:492)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
	at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:575)
	at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:498)
	at
org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:820)
	at org.apache.jsp.index_jsp._jspService(index_jsp.java:93)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:204)
	at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
	at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2396)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:405)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:380)
	at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:508)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:533)
	at java.lang.Thread.run(Thread.java:536)



I have tried <logic:present name="items" scope="request">Hello
Items..</logic:present> to make sure that 'items' is present in the
request object and it is. Anyone know what to do?


Gekka


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>