[
https://issues.apache.org/jira/browse/WW-4168?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13734715#comment-13734715
]
Greg Huber commented on WW-4168:
--------------------------------
Lukasz,
The null is comming from the backing bean being null. On a checkbox list we
are basically checking two lists, a primary and a backing, and its checked when
a match if found on both sides. If the name= variable is null (ie the
backing), thats where you get the npe.
I will see if I can modify the struts2-dmi-validation-master test you did so I
can show how we get the npe.
If I had a beer every time I forget to check for nulls on a for statement I
would be very :).
Cheers Greg.
> NullPointerException on Checkboxlist
> -------------------------------------
>
> Key: WW-4168
> URL: https://issues.apache.org/jira/browse/WW-4168
> Project: Struts 2
> Issue Type: Bug
> Components: Plugin - Java Templates
> Affects Versions: 2.3.15.1
> Environment: tomcat/centos 5
> Reporter: Greg Huber
> Assignee: Bruce Phillips
> Priority: Minor
> Fix For: 2.3.16
>
>
> Hello,
> I am getting null pointer exceptions on line :
> Caused by: java.lang.NullPointerException
> at template.events.CheckboxListHandler.isChecked(CheckboxListHandler.java:125)
> at template.events.CheckboxListHandler.generate(CheckboxListHandler.java:80)
> at org.apache.struts2.views.java.DefaultTheme.renderTag(DefaultTheme.java:120)
> at
> org.apache.struts2.views.java.JavaTemplateEngine.renderTemplate(JavaTemplateEngine.java:95)
> at org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:572)
> at org.apache.struts2.components.UIBean.end(UIBean.java:526)
> we need to check for if(nameValues)!=null
> ie:
> {code:java}
> private Boolean isChecked(Map<String, Object> params, String itemKeyStr) {
> Boolean checked = false;
> if (itemKeyStr != null) {
> String[] nameValues = (String[]) params.get("nameValue");
> if(nameValues)!=null // need this <<<<<<<<<<
> for (String value : nameValues) {
> if (checked = value.equalsIgnoreCase(itemKeyStr))
> { break; }
> }
> }
> }
> return checked;
> }
> {code}
> 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