Olá pessoal,
sou novato em JAXB e estou tentando mapear um XML para JAVA, mas estou encontrando problemas uma vez que um dos elementos do meu xml se chama <Class> . Assim, quando o JAXB tenta compilar o xsd para gerar as classes java, ele retorna o seguinte erro:
[ERROR] Attempt to create a property having the same name as the reserved word “Class”.
Bom, eu vi que o compilador do JAXB tem uma função de customização, que permite que vc mude a saida do xml exatamente para evitar esse problema.
O problema é que eu não consigo usar essa customização. Eu estou tentando fazer da seguinte forma:
<jxb:bindings version="1.0"
xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<jxb:bindings node="//xs:element[@name='Class']">
<jxb:class name="Cls"/>
<jxb:property name="Cls"/>
</jxb:bindings>
</jxb:bindings>
Eu montei esse arquivo com base no que está neste link:
http://java.sun.com/webservices/docs/1.5/tutorial/doc/JAXBUsing4.html#wp148515
Quando eu tento compilar as classes usando esse arquivo de customizaçao, recebo a seguinte mensagem:
[ERROR] XPath evaluation of “//xs:element[@name=‘Class’]” results in empty target node line 4 of binding.xjb
Tenho certeza que meu XSD tem o node <Class> e estou usando as formas certas de compilar com o JAXB 1.6.
Se alguém já tiver usado essa funcionalidade, dá uma força aí!
Abraço!