Ошибка при установке выражения 'supplierPaidChecks [0] .checkNo' со значением '[Ljava.lang.String; @ 1ac1423' [duplicate]

На этот вопрос уже есть ответ здесь:

Ошибка установки выражения 'spa.amount' со значением '[Ljava.lang.String; @ 10dd65e') 1 ответ

Я пытаюсь присвоить значения полям объекта. Здесь я назначаю более одного экземпляра объекта со страницы JSP. Я устанавливаю эти значения вSet.

<s:if test="DDActionList.size>0"> 
    <s:iterator value="DDActionList" status="rowstatus">
        <div class="box">
            <span class="label">Check No</span>
            <span class="ib">
                <s:hidden name="supplierPaidChecks[%{#rowstatus.index}].id" id="id">
                    <s:param name="value">
                        <s:property value="id"/>
                    </s:param>
                </s:hidden>
                <s:textfield name="supplierPaidChecks[%{#rowstatus.index}].checkNo" id="checkNo">
                    <s:param name="value">
                        <s:property value="checkNo"/>
                    </s:param>
                </s:textfield>
            </span>
        </div>
        <div class="box">
            <span class="label">Dated</span>
            <span class="ib">
                <s:textfield name="supplierPaidChecks[%{#rowstatus.index}].dated" id="dated">
                    <s:param name="value">
                        <s:property value="dated"/>
                    </s:param>
                </s:textfield>
            </span>
        </div>
        <div class="box">
            <span class="label">Payable At</span>
            <span class="ib">
                <s:textfield name="supplierPaidChecks[%{#rowstatus.index}].payableAt" id="payableAt">
                    <s:param name="value">
                        <s:property value="payableAt"/>
                    </s:param>
                </s:textfield>
            </span>
        </div>
        <div class="box">
            <span class="label">Paid To Acc NO</span>
            <span class="ib">
                <s:textfield name="supplierPaidChecks[%{#rowstatus.index}].paidToAccNo" id="paidToAccNo">
                    <s:param name="value">
                        <s:property value="paidToAccNo"/>
                    </s:param>
                </s:textfield>
            </span>
        </div>
        <div class="box">
            <span class="label">To Bank</span>
            <span class="ib">
                <s:textfield name="supplierPaidChecks[%{#rowstatus.index}].paidToBank" id="paidToBank">
                    <s:param name="value">
                        <s:property value="paidToBank"/>
                    </s:param>
                </s:textfield>
            </span>
        </div>
        <div class="box">
            <span class="label">To Branch</span>
            <span class="ib">
                <s:textfield name="supplierPaidChecks[%{#rowstatus.index}].paidToBranch" id="paidToBranch">
                    <s:param name="value">
                        <s:property value="paidToBranch"/>
                    </s:param>
                </s:textfield>
            </span>
        </div>

    </s:iterator>
</s:if>

Мой класс действий

public class hbmCashAction extends ActionSupport implements ModelDriven<SupplierPaidDetails> {

    SupplierPaidDetails spa = new SupplierPaidDetails();

    public SupplierPaidDetails getSpa() {
        return spa;
    }

    public void setSpa(SupplierPaidDetails spa) {
        this.spa = spa;
    }

    public String update() {
        System.out.println("--------");
      Set <SupplierPaidCheck> ax=  spa.getSupplierPaidChecks();
        for (SupplierPaidCheck ss : ax) {
            System.out.println(ss.getId()+" "+ss.getPaidToAccNo()+" "+ss.getPayableAt());
        }
        System.out.println("--------");
        return SUCCESS;
    }

    @Override
    public SupplierPaidDetails getModel() {
        return spa;
    }
}

SupplierPaidDetails class

public class SupplierPaidDetails  implements java.io.Serializable {


     private Long id;
     private SupplierPaymentDetails supplierPaymentDetails;
     private Float amount;
     private String paymentMode;
     private Date paymentDate;
     private Date addDate;
     private String status;
     private Set supplierPaidOnlines = new HashSet(0);
     private Set supplierPaidCashes = new HashSet(0);
     private Set supplierPaidChecks = new HashSet(0);
      //getter and setter
}

SupplierPaidChecks

 public class SupplierPaidCheck  implements java.io.Serializable {
 private Long id;
 private SupplierPaidDetails supplierPaidDetails;
 private long checkNo;
 private Date dated;
 private String payableAt;
 private String paidToAccNo;
 private String paidToBank;
 private String paidToBranch;
 private Date addDate;
 private Float amount;
 private String status;
 // getter and setter
 }

Я слежу за этимссылка на сайт чтобы получить установленные значения от JSP к действию

Я получаю следующие ошибки

May 05, 2014 3:38:54 PM com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn
WARNING: Error setting expression 'supplierPaidChecks[0].checkNo' with value '[Ljava.lang.String;@1ac1423'
ognl.NoSuchPropertyException: java.util.HashSet.0
    at ognl.SetPropertyAccessor.getProperty(SetPropertyAccessor.java:68)
    at com.opensymphony.xwork2.ognl.accessor.XWorkCollectionPropertyAccessor.getProperty(XWorkCollectionPropertyAccessor.java:93)
    at ognl.OgnlRuntime.getProperty(OgnlRuntime.java:2317)
    at ognl.ASTProperty.getValueBody(ASTProperty.java:114)
    at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
    at ognl.SimpleNode.getValue(SimpleNode.java:258)
    at ognl.ASTChain.setValueBody(ASTChain.java:222)
    at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)
    at ognl.SimpleNode.setValue(SimpleNode.java:301)
    at ognl.Ognl.setValue(Ognl.java:737)
    at com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:234)
    at com.opensymphony.xwork2.ognl.OgnlValueStack.trySetValue(OgnlValueStack.java:183)
    at com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:170)
    at com.opensymphony.xwork2.ognl.OgnlValueStack.setParameter(OgnlValueStack.java:148)
    at com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(ParametersInterceptor.java:318)
    at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:231)
    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:239)
    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:73)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:91)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:252)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:161)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:193)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
    at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:563)
    at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:434)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:744)

Ответы на вопрос(2)

Ваш ответ на вопрос