> -----Original Message----- > From: lixin chu [mailto:[EMAIL PROTECTED] > Sent: Friday, September 10, 2004 10:04 AM > To: Struts Users Mailing List > Subject: Re: Help - struggling this for days ! > > > Here is how I prepare action messages in Action: > > ActionMessages messages = new ActionMessages(); > messages.add(ActionMessages.GLOBAL_MESSAGE, new > ActionMaessage ("something here")); > saveMessages(request, messages); > > anything wrong ? saveMessages saves under: public static final java.lang.String MESSAGE_KEY
The request attributes key under which your action should store an org.apache.struts.action.ActionMessages object, if you are using the corresponding custom tag library elements. And the value of the constant: org.apache.struts.action.ACTION_MESSAGE So, your id should be "org.apache.struts.action.ACTION_MESSAGE" I believe. However this does work for pulling out messages as well: <logic:messagesPresent message="true"> <ul> <html:messages id="message" message="true"> <li class="green"><bean:write name="message" /></li> </html:messages> </ul> </logic:messagesPresent> > > > > --- lixin chu <[EMAIL PROTECTED]> wrote: > > > Hi, > > Appreciate your help, I have been trying to find out > > why for days. > > > > Here is my JSP: > > ---------------- > > <b>Search Templates</b> > > <font color="red" size=2> > > <logic:messagesPresent> > > <ul> > > <html:messages id="error"> > > <li><bean:write name="error"/></li> > > </html:messages><br> > > </ul> > > </logic:messagesPresent> > > </font> > > > > <font color="blue" size=2> > > <logic:messagesPresent message="true"> > > <ul> > > <html:messages id="messages" message="true"> > > <li><bean:write name="messages"/></li> > > </html:messages><br> > > </ul> > > </logic:messagesPresent> > > </font> > > > > <table border=0 cellspacing=0 cellpadding=1> > > > > <html:form action="/admin/SearchTemplate"> > > > > <tr> > > <td><font size=2 color=#0000FF>Name*:</font></td> > > <td colspan=2><input type=text name=name > > size=20/></td> > > </tr> > > > > <tr> > > <td><font size=2 color=#FF0000>Category* > > :</font></td> > > <td> > > <html:select property="categorySelected"> > > <html:options collection="templateCategories" > > property="name" labelProperty="name"/> > > </html:select> > > </td> > > </tr> > > > > <tr> > > <td></td> > > <td align=left><html:submit > > property="method"><bean:message > > key="button.search"/></html:submit></td> > > <td align=right><html:reset value="Clear"/></td> > > </tr> > > > > </html:form> > > > > </table> > > ---------------------------- > > I got error message in log file: > > 2004-09-10 23:31:21 StandardWrapperValve[action]: > > Servlet.service() for servlet action threw exception > > javax.servlet.jsp.JspException: ServletException in > > '/WEB-INF/tiles/SearchTemplate.jsp': Cannot find > > bean > > messages in any scope > > at > > > org.apache.struts.taglib.tiles.InsertTag$InsertHandler.doEndTa > g(InsertTag.java:964) > > at > > > org.apache.struts.taglib.tiles.InsertTag.doEndTag(InsertTag.java:503) > > at > > > org.apache.jsp.WEB_002dINF.layouts.layout_jsp._jspx_meth_tiles > _insert_5(layout_jsp.java:261) > > at > > > org.apache.jsp.WEB_002dINF.layouts.layout_jsp._jspService(layo > ut_jsp.java:129) > > at > > > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133) > > at > > > javax.servlet.http.HttpServlet.service(HttpServlet.java:856) > > at > > > org.apache.jasper.servlet.JspServletWrapper.service(JspServlet > Wrapper.java:311) > > at > > > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet > .java:301) > > at > > > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248) > > at > > > javax.servlet.http.HttpServlet.service(HttpServlet.java:856) > > at > > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilt > er(ApplicationFilterChain.java:284) > > at > > > org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli > cationFilterChain.java:204) > > at > > > org.apache.catalina.core.ApplicationDispatcher.invoke(Applicat > ionDispatcher.java:742) > > at > > > org.apache.catalina.core.ApplicationDispatcher.processRequest( > ApplicationDispatcher.java:506) > > at > > > org.apache.catalina.core.ApplicationDispatcher.doForward(Appli > cationDispatcher.java:443) > > at > > > org.apache.catalina.core.ApplicationDispatcher.forward(Applica > tionDispatcher.java:359) > > at > > > org.apache.struts.action.RequestProcessor.doForward(RequestPro > cessor.java:1074) > > at > > > org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesR > equestProcessor.java:303) > > at > > > org.apache.struts.tiles.TilesRequestProcessor.processTilesDefi > nition(TilesRequestProcessor.java:279) > > at > > > org.apache.struts.tiles.TilesRequestProcessor.processForwardCo > nfig(TilesRequestProcessor.java:342) > > at > > > org.apache.struts.action.RequestProcessor.process(RequestProce > ssor.java:269) > > at > > > org.apache.struts.action.ActionServlet.process(ActionServlet.j > ava:1176) > > at > > > org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:472) > > at > > > javax.servlet.http.HttpServlet.service(HttpServlet.java:763) > > at > > > javax.servlet.http.HttpServlet.service(HttpServlet.java:856) > > at > > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilt > er(ApplicationFilterChain.java:284) > > at > > > org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli > cationFilterChain.java:204) > > at > > > org.displaytag.filter.ResponseOverrideFilter.doFilter(Response > OverrideFilter.java:86) > > at > > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilt > er(ApplicationFilterChain.java:233) > > at > > > org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli > cationFilterChain.java:204) > > at > > > org.springframework.orm.hibernate.support.OpenSessionInViewFil > ter.doFilterInternal(OpenSessionInViewFilter.java:117) > > at > > > org.springframework.web.filter.OncePerRequestFilter.doFilter(O > ncePerRequestFilter.java:73) > > at > > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilt > er(ApplicationFilterChain.java:233) > > at > > > org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli > cationFilterChain.java:204) > > at > > > net.canal.core.filter.SecurityFilter.doFilter(SecurityFilter.java:129) > > at > > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilt > er(ApplicationFilterChain.java:233) > > at > > > org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli > cationFilterChain.java:204) > > at > > > org.apache.catalina.core.StandardWrapperValve.invoke(StandardW > rapperValve.java:257) > > at > > > org.apache.catalina.core.StandardValveContext.invokeNext(Stand > ardValveContext.java:151) > > at > > > org.apache.catalina.core.StandardPipeline.invoke(StandardPipel > ine.java:564) > > at > > > org.apache.catalina.core.StandardContextValve.invokeInternal(S > tandardContextValve.java:245) > > at > > > org.apache.catalina.core.StandardContextValve.invoke(StandardC > ontextValve.java:199) > > at > > > org.apache.catalina.core.StandardValveContext.invokeNext(Stand > ardValveContext.java:151) > > at > > > org.apache.catalina.core.StandardPipeline.invoke(StandardPipel > ine.java:564) > > at > > > org.apache.catalina.core.StandardHostValve.invoke(StandardHost > Valve.java:195) > > at > > > org.apache.catalina.core.StandardValveContext.invokeNext(Stand > ardValveContext.java:151) > > at > > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport > Valve.java:164) > > at > > > org.apache.catalina.core.StandardValveContext.invokeNext(Stand > ardValveContext.java:149) > > at > > > org.apache.catalina.core.StandardPipeline.invoke(StandardPipel > ine.java:564) > > at > > > org.apache.catalina.core.StandardEngineValve.invoke(StandardEn > gineValve.java:156) > > at > > > org.apache.catalina.core.StandardValveContext.invokeNext(Stand > ardValveContext.java:151) > > at > > > org.apache.catalina.core.StandardPipeline.invoke(StandardPipel > ine.java:564) > > at > > > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) > > at > > > org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter. > java:206) > > at > > > org.apache.coyote.http11.Http11Processor.process(Http11Process > or.java:828) > > at > > > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle > r.processConnection(Http11Protocol.java:700) > > at > > > org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi > nt.java:584) > > at > > > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run( > ThreadPool.java:683) > > at java.lang.Thread.run(Unknown Source) > > ------------------------------------------------ > > > > Totally lost ! > > > > thanks > > li xin > > > > __________________________________________________ > > Do You Yahoo!? > > Tired of spam? Yahoo! Mail has the best spam > > protection around > > http://mail.yahoo.com > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: > > [EMAIL PROTECTED] > > For additional commands, e-mail: > > [EMAIL PROTECTED] > > > === message truncated === > > > > > _______________________________ > Do you Yahoo!? > Shop for Back-to-School deals on Yahoo! Shopping. > http://shopping.yahoo.com/backtoschool > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]