2017-08-22 87 views
8

Mam następujące XML jako mojego JAX-WS reakcji serwisu Web:Jak mogę zmienić xml odpowiedzi w JAX-WS

<soapenv:Envelope> 
    <soapenv:Header/> 
    <soapenv:Body> 
     <QueryRBTReqMsgResponse> 
      <QueryRBTRspMsg> 
       <resultHeader> 
        <resultCode>0</resultCode> 
        <resultDesc>Successful</resultDesc> 
       </resultHeader> 
       <!--Optional:--> 
       <QueryRBTResponse> 
        <part>1</part> 
       </QueryRBTResponse> 
      </QueryRBTRspMsg> 
     </QueryRBTReqMsgResponse> 
    </soapenv:Body> 
</soapenv:Envelope> 

ale to jest to, co chcę:

<soapenv:Envelope> 
    <soapenv:Header/> 
    <soapenv:Body> 
     <QueryRBTRspMsg> 
      <resultHeader> 
       <resultCode>0</resultCode> 
       <resultDesc>Successful</resultDesc> 
      </resultHeader> 
      <!--Optional:--> 
      <QueryRBTResponse> 
       <part>1</part> 
      </QueryRBTResponse> 
     </QueryRBTRspMsg> 
    </soapenv:Body> 
</soapenv:Envelope> 

Jak można Mogę usunąć tag <QueryRBTReqMsgResponse> z mojej odpowiedzi? Próbowałem zbyt wielu zmian, ale żaden z nich nie wykonał zadania !!!

+0

Jak wygenerować tę odpowiedź? Jak wygląda odpowiedź POJO Twojej usługi? Zgaduję, że ma QueryRBTReqMsgResponse jako element root. – mart

+0

Ta odpowiedź generowana przez standardową bibliotekę Jax-Ws Java i nie ma Pojo. –

+0

To jest odpowiedź usługi SOAP gdzieś. JAX-WS to tylko API. Czy zbudowałeś usługę, która zwraca tę odpowiedź? – mart

Odpowiedz

3

W końcu znalazłem rozwiązanie. Musimy użyć następującej adnotacji:

@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)