[ https://issues.apache.org/jira/browse/WW-3939?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Greg Huber updated WW-3939: --------------------------- Description: Hello, There is another spurious "Unexpected Exception caught setting" message that comes from the use of the checkboxlist tag as it renders its hidden field with the id beginning with "__multiselect_". com.opensymphony.xwork2.interceptor.ParametersInterceptor line starting 314 {code:java} for (Map.Entry<String, Object> entry : acceptableParameters.entrySet()) { String name = entry.getKey(); Object value = entry.getValue(); try { newStack.setParameter(name, value); } catch (RuntimeException e) { if (devMode) { String developerNotification = LocalizedTextUtil.findText(ParametersInterceptor.class, "devmode.notification", ActionContext.getContext().getLocale(), "Developer Notification:\n{0}", new Object[]{ "Unexpected Exception caught setting '" + name + "' on '" + action.getClass() + ": " + e.getMessage() }); LOG.error(developerNotification); if (action instanceof ValidationAware) { ((ValidationAware) action).addActionMessage(developerNotification); } } } } {code} It may be the way I am using the checkboxlist (list of checkboxes in a table), but if I add to the id & name attributes the "cnt" number on the checkboxlist tag to match the id on the checkbox tag the error message goes away? ie add + "-" + Integer.toString(cnt) below: CheckboxListHandler (on the javatempaltes tag!) {code:java} //Hidden input section a = new Attributes(); a.add("type", "hidden") .add("id", "__multiselect_" + StringUtils.defaultString(StringEscapeUtils.escapeHtml4(id))+ "-" + Integer.toString(cnt)) .add("name", "__multiselect_" + StringUtils.defaultString(StringEscapeUtils.escapeHtml4(name))+ "-" + Integer.toString(cnt)) .add("value", "") .addIfTrue("disabled", disabled); start("input", a); end("input"); {code} output code: <input id="favourites_idEmails-1" type="checkbox" value="test" name="idEmails"> <input id="__multiselect_favourites_idEmails-1" type="hidden" value="" name="__multiselect_idEmails-1"> #### The freemarket template may also need the modification to the hidden field, ie add -${itemCount} to the id/name <input type="hidden" id="__multiselect_${parameters.id?html}-${itemCount}" name="__multiselect_${parameters.name?html}-${itemCount}" value=""<#rt/> Cheers Greg was: Hello, There is another spurious "Unexpected Exception caught setting" message that comes from the use of the checkboxlist tag as it renders its hidden field with the id beginning with "__multiselect_". com.opensymphony.xwork2.interceptor.ParametersInterceptor line starting 314 {code:java} for (Map.Entry<String, Object> entry : acceptableParameters.entrySet()) { String name = entry.getKey(); Object value = entry.getValue(); try { newStack.setParameter(name, value); } catch (RuntimeException e) { if (devMode) { String developerNotification = LocalizedTextUtil.findText(ParametersInterceptor.class, "devmode.notification", ActionContext.getContext().getLocale(), "Developer Notification:\n{0}", new Object[]{ "Unexpected Exception caught setting '" + name + "' on '" + action.getClass() + ": " + e.getMessage() }); LOG.error(developerNotification); if (action instanceof ValidationAware) { ((ValidationAware) action).addActionMessage(developerNotification); } } } } {code} It may be the way I am using the checkboxlist (list of checkboxes in a table), but if I add to the id & name attributes the "cnt" number on the checkboxlist tag to match the id on the select tag the error message goes away? ie add + "-" + Integer.toString(cnt) below: CheckboxListHandler (on the javatempaltes tag!) {code:java} //Hidden input section a = new Attributes(); a.add("type", "hidden") .add("id", "__multiselect_" + StringUtils.defaultString(StringEscapeUtils.escapeHtml4(id))+ "-" + Integer.toString(cnt)) .add("name", "__multiselect_" + StringUtils.defaultString(StringEscapeUtils.escapeHtml4(name))+ "-" + Integer.toString(cnt)) .add("value", "") .addIfTrue("disabled", disabled); start("input", a); end("input"); {code} output code: <input id="favourites_idEmails-1" type="checkbox" value="test" name="idEmails"> <input id="__multiselect_favourites_idEmails-1" type="hidden" value="" name="__multiselect_idEmails-1"> #### The freemarket template may also need the modification to the hidden field, ie add -${itemCount} to the id/name <input type="hidden" id="__multiselect_${parameters.id?html}-${itemCount}" name="__multiselect_${parameters.name?html}-${itemCount}" value=""<#rt/> Cheers Greg > Spurious "Unexpected Exception caught setting" message from > com.opensymphony.xwork2.interceptor.ParametersInterceptor on checkboxlist tags > ------------------------------------------------------------------------------------------------------------------------------------------ > > Key: WW-3939 > URL: https://issues.apache.org/jira/browse/WW-3939 > Project: Struts 2 > Issue Type: Bug > Components: Plugin - Java Templates > Affects Versions: 2.3.7 > Environment: Centos/Apache/Tomcat > Reporter: Greg Huber > Priority: Trivial > > Hello, > There is another spurious "Unexpected Exception caught setting" message that > comes from the use of the checkboxlist tag as it renders its hidden field > with the id beginning with "__multiselect_". > com.opensymphony.xwork2.interceptor.ParametersInterceptor line starting 314 > {code:java} > for (Map.Entry<String, Object> entry : acceptableParameters.entrySet()) { > String name = entry.getKey(); > Object value = entry.getValue(); > try { > newStack.setParameter(name, value); > } catch (RuntimeException e) { > if (devMode) { > String developerNotification = > LocalizedTextUtil.findText(ParametersInterceptor.class, > "devmode.notification", ActionContext.getContext().getLocale(), "Developer > Notification:\n{0}", new Object[]{ > "Unexpected Exception caught setting '" + name + > "' on '" + action.getClass() + ": " + e.getMessage() > }); > LOG.error(developerNotification); > if (action instanceof ValidationAware) { > ((ValidationAware) > action).addActionMessage(developerNotification); > } > } > } > } > {code} > It may be the way I am using the checkboxlist (list of checkboxes in a > table), but if I add to the id & name attributes the "cnt" number on the > checkboxlist tag to match the id on the checkbox tag the error message goes > away? > ie add + "-" + Integer.toString(cnt) below: > CheckboxListHandler (on the javatempaltes tag!) > {code:java} > //Hidden input section > a = new Attributes(); > a.add("type", "hidden") > .add("id", "__multiselect_" + > StringUtils.defaultString(StringEscapeUtils.escapeHtml4(id))+ "-" + > Integer.toString(cnt)) > .add("name", "__multiselect_" + > StringUtils.defaultString(StringEscapeUtils.escapeHtml4(name))+ "-" + > Integer.toString(cnt)) > .add("value", "") > .addIfTrue("disabled", disabled); > start("input", a); > end("input"); > {code} > output code: > <input id="favourites_idEmails-1" type="checkbox" value="test" > name="idEmails"> > <input id="__multiselect_favourites_idEmails-1" type="hidden" value="" > name="__multiselect_idEmails-1"> > #### > The freemarket template may also need the modification to the hidden field, > ie add -${itemCount} to the id/name > <input type="hidden" id="__multiselect_${parameters.id?html}-${itemCount}" > name="__multiselect_${parameters.name?html}-${itemCount}" > value=""<#rt/> > Cheers Greg -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira