Объект запроса мыла имеет значение null - spring ws - PullRequest
0 голосов
/ 12 июня 2019

При попытке использовать мыльный интерфейс, я получаю нулевые значения в объекте запроса, даже когда отправляю значения в объекте req. в чем причина? Пожалуйста, помогите

Ниже моя конечная точка

     @Endpoint
        public class SummaryEndPoint {

            @PayloadRoot(namespace = "http://online.mysite.no", localPart ="getSummary")
            public @ResponsePayload JAXBElement<EInvoicesObjects> getSummary(@RequestPayload SummaryObject summaryObject) {


//Here summaryObject.getzDocId() returns null.
    return null;

                }
            }

Запрос на мыло:

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:onl="http://online.mysite.no">
   <soapenv:Header/>
   <soapenv:Body>
      <onl:getSummary soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
         <in0 xsi:type="onl:SummaryObject">
            <ZDocId xsi:type="soapenc:string" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">asdasdsa</ZDocId>
            <amountDue xsi:type="soapenc:string" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">sadadsadsa</amountDue>            
         </in0>
      </onl:getSummary>
   </soapenv:Body>
</soapenv:Envelope>

Запрос объекта полезной нагрузки:

package com.nets.online2adapter.endpoints;

import javax.xml.bind.annotation.*;


import org.xmlsoap.schemas.soap.encoding.String;




@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "SummaryObject", propOrder = {
        "zDocId",
        "amountDue"
},namespace="http://online.mysite.no")
public class SummaryObject {

    @XmlElement(name = "ZDocId", required = true, nillable = true)
    protected String zDocId;
    @XmlElement(required = true, nillable = true)
    protected String amountDue;


    /**
     * Gets the value of the zDocId property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    public String getZDocId() {
        return zDocId;
    }

    /**
     * Sets the value of the zDocId property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setZDocId(String value) {
        this.zDocId = value;
    }

    /**
     * Gets the value of the amountDue property.
     *
     * @return
     *     possible object is
     *     {@link String }
     *
     */
    public String getAmountDue() {
        return amountDue;
    }

    /**
     * Sets the value of the amountDue property.
     *
     * @param value
     *     allowed object is
     *     {@link String }
     *
     */
    public void setAmountDue(String value) {
        this.amountDue = value;
    }

}

1 Ответ

0 голосов
/ 25 июля 2019

Ваш класс запроса должен иметь «request» в имени. Пожалуйста, переименуйте ваш класс запроса и попробуйте «SummaryObjectRequest».

...