Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Não está aparecendo a tag "todosOsItens"

Meu método getItens da classe EstoqueWS está como:

    @WebMethod(operationName = "todosOsItens")
    @ResponseWrapper(localName = "itens")
    @WebResult(name = "item")
    public List<Item> getItens(@WebParam(name = "filtros") final Filtros filtros) {
        System.out.println("Chamando todosOsItens()");
        return this.dao.todosItens(filtros.getLista());
    }

Atualizei a request no SoapUI e diz um POST com o XML abaixo:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.estoque.caelum.com.br/">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:todosOsItens>
         <!--Optional:-->
         <filtros>
            <!--Zero or more repetitions:-->
            <filtro>
               <!--Optional:-->
               <nome/>
               <!--Optional:-->
               <tipo>Celular</tipo>
            </filtro>
         </filtros>
      </ws:todosOsItens>
   </soapenv:Body>
</soapenv:Envelope>

E estou obtendo a resposta abaixo:

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:itens xmlns:ns2="http://ws.estoque.caelum.com.br/">
         <item>
            <codigo>IP4</codigo>
            <nome>IPhone 4 C</nome>
            <quantidade>7</quantidade>
            <tipo>Celular</tipo>
         </item>
         <item>
            <codigo>IP5</codigo>
            <nome>IPhone 5</nome>
            <quantidade>3</quantidade>
            <tipo>Celular</tipo>
         </item>
         <item>
            <codigo>IP6</codigo>
            <nome>IPhone 6 S</nome>
            <quantidade>10</quantidade>
            <tipo>Celular</tipo>
         </item>
         <item>
            <codigo>MOX</codigo>
            <nome>Moto X</nome>
            <quantidade>6</quantidade>
            <tipo>Celular</tipo>
         </item>
         <item>
            <codigo>MOG</codigo>
            <nome>Moto G</nome>
            <quantidade>8</quantidade>
            <tipo>Celular</tipo>
         </item>
         <item>
            <codigo>MXX</codigo>
            <nome>Moto MAXX</nome>
            <quantidade>2</quantidade>
            <tipo>Celular</tipo>
         </item>
      </ns2:itens>
   </S:Body>
</S:Envelope>

Observem que a tag todosOsItens não está aparecendo.

O que estou fazendo de errado?

1 resposta
solução!

Oi Daniel,

a tag todosOsItens aparece somente na requisição. na resposta realmente só terá o itens/item.

abs