java - Jsp page gives me a List, but my class want a Set -


i have class called menu, field called vocemenulist, contains menu items "home", "contact" etc.

public class menu implements serializable{  private set<vocemenu> vocemenulist;  public void setvocemenulist(set<vocemenu> vocemenulist) {         this.vocemenulist = vocemenulist;}  public set<vocemenu> getvocemenulist() {             return vocemenulist;}  } 

this jsp page, print in input-text fields of object vocemenu, in order edit value

<c:foreach items="${menu.vocemenulist}" varstatus="counter"> ...     url <form:input path="vocemenulist[${counter.index}].url" maxlength="11"/><br/> ... </c:foreach> 

when post page following error, because jsp page returns list, class expect set. how can solve problem?

thank

org.springframework.web.util.nestedservletexception: request processing failed; nested exception org.springframework.beans.invalidpropertyexception: invalid property 'vocemenulist[0]' of bean class [com.springgestioneerrori.model.menu]: getter property 'vocemenulist' threw exception; nested exception java.lang.reflect.invocationtargetexception     org.springframework.web.servlet.frameworkservlet.processrequest(frameworkservlet.java:894)     org.springframework.web.servlet.frameworkservlet.dopost(frameworkservlet.java:789)     javax.servlet.http.httpservlet.service(httpservlet.java:754)     javax.servlet.http.httpservlet.service(httpservlet.java:847)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:330)     org.springframework.security.web.access.intercept.filtersecurityinterceptor.invoke(filtersecurityinterceptor.java:118)     org.springframework.security.web.access.intercept.filtersecurityinterceptor.dofilter(filtersecurityinterceptor.java:84)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.access.exceptiontranslationfilter.dofilter(exceptiontranslationfilter.java:113)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.session.sessionmanagementfilter.dofilter(sessionmanagementfilter.java:103)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.anonymousauthenticationfilter.dofilter(anonymousauthenticationfilter.java:113)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.servletapi.securitycontextholderawarerequestfilter.dofilter(securitycontextholderawarerequestfilter.java:54)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.savedrequest.requestcacheawarefilter.dofilter(requestcacheawarefilter.java:45)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.abstractauthenticationprocessingfilter.dofilter(abstractauthenticationprocessingfilter.java:183)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.logout.logoutfilter.dofilter(logoutfilter.java:105)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.session.concurrentsessionfilter.dofilter(concurrentsessionfilter.java:125)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.context.securitycontextpersistencefilter.dofilter(securitycontextpersistencefilter.java:87)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.filterchainproxy.dofilterinternal(filterchainproxy.java:192)     org.springframework.security.web.filterchainproxy.dofilter(filterchainproxy.java:160)     org.springframework.web.filter.delegatingfilterproxy.invokedelegate(delegatingfilterproxy.java:346)     org.springframework.web.filter.delegatingfilterproxy.dofilter(delegatingfilterproxy.java:259)    root cause  org.springframework.beans.invalidpropertyexception: invalid property 'vocemenulist[0]' of bean class [com.springgestioneerrori.model.menu]: getter property 'vocemenulist' threw exception; nested exception java.lang.reflect.invocationtargetexception     org.springframework.beans.beanwrapperimpl.getpropertyvalue(beanwrapperimpl.java:845)     org.springframework.beans.beanwrapperimpl.getnestedbeanwrapper(beanwrapperimpl.java:576)     org.springframework.beans.beanwrapperimpl.getbeanwrapperforpropertypath(beanwrapperimpl.java:553)     org.springframework.beans.beanwrapperimpl.setpropertyvalue(beanwrapperimpl.java:914)     org.springframework.beans.abstractpropertyaccessor.setpropertyvalues(abstractpropertyaccessor.java:76)     org.springframework.validation.databinder.applypropertyvalues(databinder.java:692)     org.springframework.validation.databinder.dobind(databinder.java:588)     org.springframework.web.bind.webdatabinder.dobind(webdatabinder.java:191)     org.springframework.web.bind.servletrequestdatabinder.bind(servletrequestdatabinder.java:112)     org.springframework.web.servlet.mvc.method.annotation.servletmodelattributemethodprocessor.bindrequestparameters(servletmodelattributemethodprocessor.java:153)     org.springframework.web.method.annotation.modelattributemethodprocessor.resolveargument(modelattributemethodprocessor.java:106)     org.springframework.web.method.support.handlermethodargumentresolvercomposite.resolveargument(handlermethodargumentresolvercomposite.java:75)     org.springframework.web.method.support.invocablehandlermethod.getmethodargumentvalues(invocablehandlermethod.java:162)     org.springframework.web.method.support.invocablehandlermethod.invokeforrequest(invocablehandlermethod.java:123)     org.springframework.web.servlet.mvc.method.annotation.servletinvocablehandlermethod.invokeandhandle(servletinvocablehandlermethod.java:100)     org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.invokehandlermethod(requestmappinghandleradapter.java:604)     org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.handleinternal(requestmappinghandleradapter.java:565)     org.springframework.web.servlet.mvc.method.abstracthandlermethodadapter.handle(abstracthandlermethodadapter.java:80)     org.springframework.web.servlet.dispatcherservlet.dodispatch(dispatcherservlet.java:923)     org.springframework.web.servlet.dispatcherservlet.doservice(dispatcherservlet.java:852)     org.springframework.web.servlet.frameworkservlet.processrequest(frameworkservlet.java:882)     org.springframework.web.servlet.frameworkservlet.dopost(frameworkservlet.java:789)     javax.servlet.http.httpservlet.service(httpservlet.java:754)     javax.servlet.http.httpservlet.service(httpservlet.java:847)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:330)     org.springframework.security.web.access.intercept.filtersecurityinterceptor.invoke(filtersecurityinterceptor.java:118)     org.springframework.security.web.access.intercept.filtersecurityinterceptor.dofilter(filtersecurityinterceptor.java:84)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.access.exceptiontranslationfilter.dofilter(exceptiontranslationfilter.java:113)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.session.sessionmanagementfilter.dofilter(sessionmanagementfilter.java:103)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.anonymousauthenticationfilter.dofilter(anonymousauthenticationfilter.java:113)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.servletapi.securitycontextholderawarerequestfilter.dofilter(securitycontextholderawarerequestfilter.java:54)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.savedrequest.requestcacheawarefilter.dofilter(requestcacheawarefilter.java:45)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.abstractauthenticationprocessingfilter.dofilter(abstractauthenticationprocessingfilter.java:183)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.logout.logoutfilter.dofilter(logoutfilter.java:105)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.session.concurrentsessionfilter.dofilter(concurrentsessionfilter.java:125)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.context.securitycontextpersistencefilter.dofilter(securitycontextpersistencefilter.java:87)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.filterchainproxy.dofilterinternal(filterchainproxy.java:192)     org.springframework.security.web.filterchainproxy.dofilter(filterchainproxy.java:160)     org.springframework.web.filter.delegatingfilterproxy.invokedelegate(delegatingfilterproxy.java:346)     org.springframework.web.filter.delegatingfilterproxy.dofilter(delegatingfilterproxy.java:259)    root cause  java.lang.reflect.invocationtargetexception     sun.reflect.generatedmethodaccessor35.invoke(unknown source)     sun.reflect.delegatingmethodaccessorimpl.invoke(unknown source)     java.lang.reflect.method.invoke(unknown source)     org.springframework.beans.beanwrapperimpl.getpropertyvalue(beanwrapperimpl.java:761)     org.springframework.beans.beanwrapperimpl.getnestedbeanwrapper(beanwrapperimpl.java:576)     org.springframework.beans.beanwrapperimpl.getbeanwrapperforpropertypath(beanwrapperimpl.java:553)     org.springframework.beans.beanwrapperimpl.setpropertyvalue(beanwrapperimpl.java:914)     org.springframework.beans.abstractpropertyaccessor.setpropertyvalues(abstractpropertyaccessor.java:76)     org.springframework.validation.databinder.applypropertyvalues(databinder.java:692)     org.springframework.validation.databinder.dobind(databinder.java:588)     org.springframework.web.bind.webdatabinder.dobind(webdatabinder.java:191)     org.springframework.web.bind.servletrequestdatabinder.bind(servletrequestdatabinder.java:112)     org.springframework.web.servlet.mvc.method.annotation.servletmodelattributemethodprocessor.bindrequestparameters(servletmodelattributemethodprocessor.java:153)     org.springframework.web.method.annotation.modelattributemethodprocessor.resolveargument(modelattributemethodprocessor.java:106)     org.springframework.web.method.support.handlermethodargumentresolvercomposite.resolveargument(handlermethodargumentresolvercomposite.java:75)     org.springframework.web.method.support.invocablehandlermethod.getmethodargumentvalues(invocablehandlermethod.java:162)     org.springframework.web.method.support.invocablehandlermethod.invokeforrequest(invocablehandlermethod.java:123)     org.springframework.web.servlet.mvc.method.annotation.servletinvocablehandlermethod.invokeandhandle(servletinvocablehandlermethod.java:100)     org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.invokehandlermethod(requestmappinghandleradapter.java:604)     org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.handleinternal(requestmappinghandleradapter.java:565)     org.springframework.web.servlet.mvc.method.abstracthandlermethodadapter.handle(abstracthandlermethodadapter.java:80)     org.springframework.web.servlet.dispatcherservlet.dodispatch(dispatcherservlet.java:923)     org.springframework.web.servlet.dispatcherservlet.doservice(dispatcherservlet.java:852)     org.springframework.web.servlet.frameworkservlet.processrequest(frameworkservlet.java:882)     org.springframework.web.servlet.frameworkservlet.dopost(frameworkservlet.java:789)     javax.servlet.http.httpservlet.service(httpservlet.java:754)     javax.servlet.http.httpservlet.service(httpservlet.java:847)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:330)     org.springframework.security.web.access.intercept.filtersecurityinterceptor.invoke(filtersecurityinterceptor.java:118)     org.springframework.security.web.access.intercept.filtersecurityinterceptor.dofilter(filtersecurityinterceptor.java:84)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.access.exceptiontranslationfilter.dofilter(exceptiontranslationfilter.java:113)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.session.sessionmanagementfilter.dofilter(sessionmanagementfilter.java:103)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.anonymousauthenticationfilter.dofilter(anonymousauthenticationfilter.java:113)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.servletapi.securitycontextholderawarerequestfilter.dofilter(securitycontextholderawarerequestfilter.java:54)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.savedrequest.requestcacheawarefilter.dofilter(requestcacheawarefilter.java:45)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.abstractauthenticationprocessingfilter.dofilter(abstractauthenticationprocessingfilter.java:183)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.logout.logoutfilter.dofilter(logoutfilter.java:105)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.session.concurrentsessionfilter.dofilter(concurrentsessionfilter.java:125)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.context.securitycontextpersistencefilter.dofilter(securitycontextpersistencefilter.java:87)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.filterchainproxy.dofilterinternal(filterchainproxy.java:192)     org.springframework.security.web.filterchainproxy.dofilter(filterchainproxy.java:160)     org.springframework.web.filter.delegatingfilterproxy.invokedelegate(delegatingfilterproxy.java:346)     org.springframework.web.filter.delegatingfilterproxy.dofilter(delegatingfilterproxy.java:259)    root cause  java.lang.nullpointerexception     com.springgestioneerrori.model.menu.getvocemenulist(menu.java:85)     sun.reflect.generatedmethodaccessor35.invoke(unknown source)     sun.reflect.delegatingmethodaccessorimpl.invoke(unknown source)     java.lang.reflect.method.invoke(unknown source)     org.springframework.beans.beanwrapperimpl.getpropertyvalue(beanwrapperimpl.java:761)     org.springframework.beans.beanwrapperimpl.getnestedbeanwrapper(beanwrapperimpl.java:576)     org.springframework.beans.beanwrapperimpl.getbeanwrapperforpropertypath(beanwrapperimpl.java:553)     org.springframework.beans.beanwrapperimpl.setpropertyvalue(beanwrapperimpl.java:914)     org.springframework.beans.abstractpropertyaccessor.setpropertyvalues(abstractpropertyaccessor.java:76)     org.springframework.validation.databinder.applypropertyvalues(databinder.java:692)     org.springframework.validation.databinder.dobind(databinder.java:588)     org.springframework.web.bind.webdatabinder.dobind(webdatabinder.java:191)     org.springframework.web.bind.servletrequestdatabinder.bind(servletrequestdatabinder.java:112)     org.springframework.web.servlet.mvc.method.annotation.servletmodelattributemethodprocessor.bindrequestparameters(servletmodelattributemethodprocessor.java:153)     org.springframework.web.method.annotation.modelattributemethodprocessor.resolveargument(modelattributemethodprocessor.java:106)     org.springframework.web.method.support.handlermethodargumentresolvercomposite.resolveargument(handlermethodargumentresolvercomposite.java:75)     org.springframework.web.method.support.invocablehandlermethod.getmethodargumentvalues(invocablehandlermethod.java:162)     org.springframework.web.method.support.invocablehandlermethod.invokeforrequest(invocablehandlermethod.java:123)     org.springframework.web.servlet.mvc.method.annotation.servletinvocablehandlermethod.invokeandhandle(servletinvocablehandlermethod.java:100)     org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.invokehandlermethod(requestmappinghandleradapter.java:604)     org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.handleinternal(requestmappinghandleradapter.java:565)     org.springframework.web.servlet.mvc.method.abstracthandlermethodadapter.handle(abstracthandlermethodadapter.java:80)     org.springframework.web.servlet.dispatcherservlet.dodispatch(dispatcherservlet.java:923)     org.springframework.web.servlet.dispatcherservlet.doservice(dispatcherservlet.java:852)     org.springframework.web.servlet.frameworkservlet.processrequest(frameworkservlet.java:882)     org.springframework.web.servlet.frameworkservlet.dopost(frameworkservlet.java:789)     javax.servlet.http.httpservlet.service(httpservlet.java:754)     javax.servlet.http.httpservlet.service(httpservlet.java:847)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:330)     org.springframework.security.web.access.intercept.filtersecurityinterceptor.invoke(filtersecurityinterceptor.java:118)     org.springframework.security.web.access.intercept.filtersecurityinterceptor.dofilter(filtersecurityinterceptor.java:84)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.access.exceptiontranslationfilter.dofilter(exceptiontranslationfilter.java:113)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.session.sessionmanagementfilter.dofilter(sessionmanagementfilter.java:103)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.anonymousauthenticationfilter.dofilter(anonymousauthenticationfilter.java:113)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.servletapi.securitycontextholderawarerequestfilter.dofilter(securitycontextholderawarerequestfilter.java:54)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.savedrequest.requestcacheawarefilter.dofilter(requestcacheawarefilter.java:45)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.abstractauthenticationprocessingfilter.dofilter(abstractauthenticationprocessingfilter.java:183)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.authentication.logout.logoutfilter.dofilter(logoutfilter.java:105)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.session.concurrentsessionfilter.dofilter(concurrentsessionfilter.java:125)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.context.securitycontextpersistencefilter.dofilter(securitycontextpersistencefilter.java:87)     org.springframework.security.web.filterchainproxy$virtualfilterchain.dofilter(filterchainproxy.java:342)     org.springframework.security.web.filterchainproxy.dofilterinternal(filterchainproxy.java:192)     org.springframework.security.web.filterchainproxy.dofilter(filterchainproxy.java:160)     org.springframework.web.filter.delegatingfilterproxy.invokedelegate(delegatingfilterproxy.java:346)     org.springframework.web.filter.delegatingfilterproxy.dofilter(delegatingfilterproxy.java:259)    note full stack trace of root cause available in apache tomcat/7.0.42 logs.   apache tomcat/7.0.42 

you should able iterate without using counter variable doing:

<c:foreach items="${menu.vocemenulist}" var="item"> ...     url <form:input path="${item.url}" maxlength="11"/><br/> ... </c:foreach> 

note use of var instead of varstatus. way doesn't matter it's set, long it's iterable


Comments