Hi, Declare like this in your action class, List<String> country = new ArrayList<String>();
Hope this will solve your problem.... - Sheeva On Thu, Feb 19, 2009 at 5:47 AM, Sidharth Bhatia <sidharth.bhat...@gmail.com > wrote: > Hi, > > > > I have form, and a list that is being populated with it. When I first enter > the action the list populates properly. But the second time, I get the > following error: > > > > tag 'select', field 'list', name 'country': The requested list key > 'countries' could not be resolved as a > collection/array/map/enumeration/iterator type. Example: people or > people.{name} - [unknown location] > > > org.apache.struts2.components.Component.fieldError(Component.java:230) > > > org.apache.struts2.components.Component.findValue(Component.java:351) > > > > org.apache.struts2.components.ListUIBean.evaluateExtraParams(ListUIBean.java > :80) > > > org.apache.struts2.components.Select.evaluateExtraParams(Select.java:105) > > org.apache.struts2.components.UIBean.evaluateParams(UIBean.java:856) > > org.apache.struts2.components.UIBean.end(UIBean.java:510) > > > > org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSuppor > t.java:42) > > > > org.apache.jsp.register_jsp._jspx_meth_s_005fselect_005f0(register_jsp.java: > 537) > > > > org.apache.jsp.register_jsp._jspx_meth_s_005fform_005f0(register_jsp.java:18 > 0) > > org.apache.jsp.register_jsp._jspService(register_jsp.java:81) > > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > > > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:3 > 74) > > > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) > > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) > > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > > > org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:9 > 68) > > > > org.apache.jasper.runtime.PageContextImpl.doInclude(PageContextImpl.java:640 > ) > > > org.apache.jasper.runtime.PageContextImpl.include(PageContextImpl.java:634) > > > > org.apache.tiles.jsp.context.JspTilesRequestContext.include(JspTilesRequestC > ontext.java:80) > > > > org.apache.tiles.jsp.context.JspTilesRequestContext.dispatch(JspTilesRequest > Context.java:73) > > > > org.apache.tiles.context.TilesRequestContextWrapper.dispatch(TilesRequestCon > textWrapper.java:72) > > > > org.apache.struts2.tiles.StrutsTilesRequestContext.dispatch(StrutsTilesReque > stContext.java:88) > > > > org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:28 > 3) > > > > org.apache.tiles.jsp.taglib.InsertAttributeTag.render(InsertAttributeTag.jav > a:140) > > > > org.apache.tiles.jsp.taglib.InsertAttributeTag.render(InsertAttributeTag.jav > a:117) > > > > org.apache.tiles.jsp.taglib.RenderTagSupport.execute(RenderTagSupport.java:1 > 54) > > > > org.apache.tiles.jsp.taglib.RoleSecurityTagSupport.doEndTag(RoleSecurityTagS > upport.java:75) > > > > org.apache.tiles.jsp.taglib.ContainerTagSupport.doEndTag(ContainerTagSupport > .java:80) > > > > org.apache.jsp.layouts.base_jsp._jspx_meth_tiles_005finsertAttribute_005f2(b > ase_jsp.java:157) > > org.apache.jsp.layouts.base_jsp._jspService(base_jsp.java:79) > > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > > > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:3 > 74) > > > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) > > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) > > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > > > org.apache.tiles.servlet.context.ServletTilesRequestContext.forward(ServletT > ilesRequestContext.java:198) > > > > org.apache.tiles.servlet.context.ServletTilesRequestContext.dispatch(Servlet > TilesRequestContext.java:179) > > > > org.apache.tiles.context.TilesRequestContextWrapper.dispatch(TilesRequestCon > textWrapper.java:72) > > > > org.apache.struts2.tiles.StrutsTilesRequestContext.dispatch(StrutsTilesReque > stContext.java:88) > > > > org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:60 > 6) > > > > org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:24 > 6) > > > org.apache.struts2.views.tiles.TilesResult.doExecute(TilesResult.java:105) > > > > org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSuppor > t.java:186) > > > > com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionI > nvocation.java:361) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:265) > > > > com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(Validati > onInterceptor.java:249) > > > > org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.do > Intercept(AnnotationValidationInterceptor.java:68) > > > > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method > FilterInterceptor.java:87) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(Con > versionErrorInterceptor.java:122) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(Parame > tersInterceptor.java:195) > > > > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method > FilterInterceptor.java:87) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(Parame > tersInterceptor.java:195) > > > > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method > FilterInterceptor.java:87) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(St > aticParametersInterceptor.java:148) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterce > ptor.java:93) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInt > erceptor.java:235) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDr > ivenInterceptor.java:89) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(S > copedModelDrivenInterceptor.java:128) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > org.apache.struts2.interceptor.ProfilingActivationInterceptor.intercept(Prof > ilingActivationInterceptor.java:104) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(Debu > ggingInterceptor.java:267) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingIn > terceptor.java:126) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareIn > terceptor.java:138) > > > > com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(Method > FilterInterceptor.java:87) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nIntercepto > r.java:148) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletCon > figInterceptor.java:164) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasIntercep > tor.java:128) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(Ex > ceptionMappingInterceptor.java:176) > > > > com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocati > on.java:236) > > > > org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52) > > > org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:468) > > > > org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.jav > a:395) > > > > It seems like the countries object has been poped off of the value stack > during the validation firing, any ideas how to fix this?? > > > > The tag is as follows: > > > > <s:select id="registration_countryCode" name="country" multiple="false" > emptyOption="true" required="true" > > list="countries" listKey="code" listValue="name" label="Country" > > > > > > thanks, > > Sid Bhatia > "Try not. Do... or do not. There is no try" -- Yoda > _________________________ > * <mailto:sidharth.bha...@lehman.com> mailto:sidharth.bhat...@gmail.com > > > >