Estou com um problema de montar a mensagem de cabeçalho para consumir o ws da nfe.
Outro problema também é que não entendi muito bem os novos métodos dos Serviços. Por exemplo, O método do WS de Status Serviço da Sefaz-RS o nfeStatusServicoNF2(NfeDadosMsg param), tem esse parâmetro ai que um objeto que tem um atributo que um ArrayList e você insere dados nele. Só que não entendi muito que dados são esses.
Fui consultar a página do serviço e tinha o seguinte XML lá:
POST /ws/NfeStatusServico/NfeStatusServico2.asmx HTTP/1.1
Host: homologacao.nfe.sefaz.rs.gov.br
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
Substitui o que está em azul pelos dados corretos. Depois fiz um programa que lê o XML colocando todas as informações em uma String e adicionei essa String no NfeDadosMsg e enviei para o WS, que me retornou o seguinte erro:
[color=red]
Exception in thread “main” javax.xml.ws.soap.SOAPFaultException: Server was unable to read request. —> There is an error in XML document (1, 8589). —> The specified node cannot be inserted as the valid child of this node, because the specified node is the wrong type.[/color]
Estou usando JAX-WS para geração das classes apartir do wsdl.
Alguém sabe o que posso fazer?
como é que você gera as classes pelo Axis2? Fui tentar e deu esse erro ai:
[color=red]Exception in thread “main” org.apache.axis2.wsdl.codegen.CodeGenerationException: java.lang.RuntimeException: No mapping defined for element {http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico2}nfeCabecMsg[/color]
zoren, eu uso -d jibx para informar que eu quero usar o databind JiBX para ligar os dados XML a objetos Java. Como você não especifica qual quer usar o Axis2 usa o ADB.