JAVA - Предоставление веб-службы - Проблема родительского узла - PullRequest
0 голосов
/ 14 сентября 2018

новичок в Java, изо всех сил пытающийся представить веб-сервис на Java, как показано ниже.

Код:

@WebService(serviceName="LoginService", 
name="LoginService",targetNamespace="http://XYZ")

public interface ILoginService {

    @WebMethod(action="Login1", operationName="Login1")
    String Login1(
        @WebParam(name="LoginBody", targetNamespace="") LoginBody loginBody 
    );

    @XmlAccessorType(XmlAccessType.NONE)  
    class LoginBody{ 
        @XmlElement(required=true,name="Id")
        String ID;
        @XmlElement(required=true,name="password")
        String password; 
        @XmlElement(required=true,name="domain")
        String domain;
    }
}

Результат:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:xyz="http://XYZ">
<soapenv:Header/>
<soapenv:Body>
  <xyz:Login1>
     <!--Optional:-->
     <LoginBody>
        <Id>?</Id>
        <password>?</password>
        <domain>?</domain>
     </LoginBody>
  </xyz:Login1>
</soapenv:Body>

Ожидаемый результат: я не хочу, чтобы zyx: Login1 появлялся в запросе, когда я использую его в SOAPUI.Скорее он должен начинаться непосредственно с xyz: LoginBody, как показано ниже.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:ass="http:/XYZ">
<soapenv:Header/>
<soapenv:Body>
  <ass:LoginBody>
     <Id></Id>
     <password></password>
     <domain></domain>
  </ass:LoginBody>
</soapenv:Body>
</soapenv:Envelope>
...