Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Model view controller 为spring mvc复选框疯狂_Model View Controller_Spring_Checkbox - Fatal编程技术网

Model view controller 为spring mvc复选框疯狂

Model view controller 为spring mvc复选框疯狂,model-view-controller,spring,checkbox,Model View Controller,Spring,Checkbox,我使复选框正常工作,但我不记得我对代码做了什么修改。再也不行了。它一直在说: org.springframework.web.servlet.tags.form.Checkbox Tag - java.lang.NullPointerException at org.springframework.web.servlet.tags.form.Selected ValueComparator.exhaustiveCompare(SelectedValueCom parator.java:157)

我使复选框正常工作,但我不记得我对代码做了什么修改。再也不行了。它一直在说:

org.springframework.web.servlet.tags.form.Checkbox Tag - 
java.lang.NullPointerException
at org.springframework.web.servlet.tags.form.Selected ValueComparator.exhaustiveCompare(SelectedValueCom parator.java:157)
java看起来像这样:

public class ServiceRequest implements Serializable {
 ......
    private GenericAddress serviceAddress;
    private String problemDescription;
    private String referenceNumber;   
    private String[] optionExchangeList = new String[10];
        ......
<INPUT TYPE="checkbox" NAME="addPrima" onclick="showHideDiv(this,'exchangeOfOption')">
   <spring:message code="serviceRequest.label.ExchangeOfOption"/><br />
   <div id="exchangeOfOption" style="display:none; margin-left : 15px;" >
    <spring:message code="serviceRequest.label.OnsiteExchangeOfDevice"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Duplex"/><br />
                <spring:message code="serviceRequest.label.Drawer"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Drawer"/><br />
                <spring:message code="serviceRequest.label.Feeder"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Feeder"/><br />
                <spring:message code="serviceRequest.label.MaintenanceKit"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Maintenance Kit"/><br />
                <spring:message code="serviceRequest.label.Other"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Other"/>
            </div>  
jsp代码如下所示:

public class ServiceRequest implements Serializable {
 ......
    private GenericAddress serviceAddress;
    private String problemDescription;
    private String referenceNumber;   
    private String[] optionExchangeList = new String[10];
        ......
<INPUT TYPE="checkbox" NAME="addPrima" onclick="showHideDiv(this,'exchangeOfOption')">
   <spring:message code="serviceRequest.label.ExchangeOfOption"/><br />
   <div id="exchangeOfOption" style="display:none; margin-left : 15px;" >
    <spring:message code="serviceRequest.label.OnsiteExchangeOfDevice"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Duplex"/><br />
                <spring:message code="serviceRequest.label.Drawer"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Drawer"/><br />
                <spring:message code="serviceRequest.label.Feeder"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Feeder"/><br />
                <spring:message code="serviceRequest.label.MaintenanceKit"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Maintenance Kit"/><br />
                <spring:message code="serviceRequest.label.Other"/> <form:checkbox path="serviceRequest.optionExchangeList" value="Other"/>
            </div>  
对于双面打印和抽屉,它们在浏览器中保持选中状态。但对于其他领域。它们保持未检查状态,即使我检查了它们,如果我在action方法中使用以下内容打印它们,它们也不会出现在OptionExchange列表中:

private String[] optionExchangeList = new String[]{"Duplex","Drawer"};
for (String s:serviceRequest.optionExchangeList){
 System.out.println(s+"\n");
}
无论复选框的状态如何,列表都保持不变

我只是做了个梦吗???还是我遇到鬼了???我快疯了。
救命啊

当我准备使用另一种方法时,光线照在我身上。保持简短和清晰。 使用以下内容定义字符串列表

private String[] optionExchangeList = new String[]{};

没有例外。它可以正常工作。

是否会因为数组optionExchangeList中的某些元素为空而爆炸?