encoding/xml: o que há de errado ?

38 views
Skip to first unread message

Daniel Ortiz Pereira da Silva

unread,
Apr 16, 2013, 10:49:30 AM4/16/13
to golang...@googlegroups.com
Olá,

No código seguinte http://play.golang.org/p/bKOg3S91Ga eu gero um xml a partir de uma string mas quando vou fazer o processo de leitura desse xml gerado para a estrutura está dando erro:

panic: reflect: call of reflect.Value.Type on zero Value

goroutine 1 [running]:
reflect.Value.Type(0x0, 0x0, 0x0, 0x0, 0x0, ...)
	go/src/pkg/reflect/value.go:1425 +0x78
encoding/xml.(*Decoder).unmarshal(0xf840047000, 0x0, 0x0, 0x0, 0xf840029630, ...)
	go/src/pkg/encoding/xml/read.go:179 +0xffa
encoding/xml.(*Decoder).DecodeElement(0xf840047000, 0x4682d8, 0x0, 0x0, 0xf840047000, ...)
	go/src/pkg/encoding/xml/read.go:132 +0x17c
encoding/xml.(*Decoder).Decode(0xf840047000, 0x4682d8, 0x0, 0xf840029030, 0xf840060660, ...)
	go/src/pkg/encoding/xml/read.go:120 +0x45
encoding/xml.Unmarshal(0xf840064000, 0x14700000147, 0x4682d8, 0x0, 0xf800000001, ...)
	go/src/pkg/encoding/xml/read.go:114 +0xce
main.LoadConfig(0xf840064000, 0x14700000147, 0x0, 0x0, 0x0, ...)
	/tmpfs/gosandbox-129d4faf_343e96e7_1cde8d27_bab9484c_a4a6a448/prog.go:51 +0x70
main.main()
	/tmpfs/gosandbox-129d4faf_343e96e7_1cde8d27_bab9484c_a4a6a448/prog.go:43 +0x231

Program exited.

Alguém consegue ver se estou fazendo algo de errado ?

Grato pela ajuda!

Gustavo Niemeyer

unread,
Apr 16, 2013, 11:04:03 AM4/16/13
to golang...@googlegroups.com
http://play.golang.org/p/ctrD9cw9wo

Linha 51.


2013/4/16 Daniel Ortiz Pereira da Silva <daniel.p...@gmail.com>:
> --
>
> ---
> Você está recebendo esta mensagem porque se inscreveu no grupo "Golang
> Brasil" dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie
> um e-mail para golang-brasi...@googlegroups.com.
> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>
>



--

gustavo @ http://niemeyer.net

Herbert Fischer

unread,
Apr 16, 2013, 11:08:48 AM4/16/13
to golang...@googlegroups.com
Eu ainda não utilizei a API de xml do Go, mas a julgar pelo erro, imagino que algum campo do XML esteja vazio.

Go tem o conceito de zero value, ou seja, qualquer variável, mesmo que não inicializada pelo código, sempre terá um valor "zero" default. Isso evita muitos problemas graves, mas causa outros de menor impacto.




2013/4/16 Daniel Ortiz Pereira da Silva <daniel.p...@gmail.com>
Olá,

--

Daniel Ortiz Pereira da Silva

unread,
Apr 17, 2013, 7:35:30 AM4/17/13
to golang...@googlegroups.com
Funcionou!
Muito obrigado!
Reply all
Reply to author
Forward
0 new messages