O XML faço para enviar para um campo isso é declarada como anulável?
Pergunta
Eu tenho um aplicativo com uma interface de estilo REST que leva documentos XML via POST de clientes. Este aplicativo é escrito em Java e usa feijão XML para processar a mensagem postada.
A definição de esquema XML para um campo nos olhares mensagem como esta:
<xs:element name="value" type="xs:string" nillable="true" />
Como faço para enviar um valor nulo que atende a essa especificação?
Enviei <value xsi:nil="true" />
mas isso fez com que o parser XML para vomitar.
Solução
Essa é a maneira correta de enviar um valor nulo (assumindo que o namespace padrão eo namespace xsi
estão definidas para os valores corretos, ou seja, "http://www.w3.org/2001/XMLSchema-instance"
para xsi
.) De modo que parece que você pode ter vindo acima de encontro a um bug na CML parser você está usando. Qual é a mensagem de erro?
Você pode tentar usar xsi:nil="1"
ou usando tags de abertura e fechamento separados (<value xsi:nil="true"></value>
) para tentar trabalhar em torno do bug.
Outras dicas
E sobre <value xsi:nil="true"></value>
? Isso é que é na especificação .
No passado, quando eu tive elementos XML que foram nulos ou eu não poderia incluí-los ou enviá-los esvaziar assim, no seu caso seria:
<value />
Você já tentou isso?