Могу ли я заставить MOXy преобразовывать строку в логическое значение при генерации json

Объектная модель имеет элемент, заканчивающийся типом String

public class LifeSpan {

protected String begin;
protected String end;
@XmlJavaTypeAdapter(CollapsedStringAdapter.class)
protected String ended;
....

. но на самом деле это только логическое значение, (я не знаю значения аннотации XmlJavaTypeAdapter)

При выводе в виде XML дает

<life-span><begin>1999-04</begin><ended>true</ended></life-span>

поэтому на самом деле не имеет значения, определено ли оно как логическое или строковое

но вывод JSON

"life-span" : {
         "begin" : "1999-04",
         "ended" : "true"
      },

когда мне это нужно

 "life-span" : {
         "begin" : "1999-04",
         "ended" : true
      },

Я не могу изменить объектную модель, поэтому подумал, что смогу сопоставить правильный тип в файле oxml.xml, и попытался

<java-type name="LifeSpan">
            <java-attributes>
                <xml-element java-attribute="ended"  type="boolean"/>
            </java-attributes>
        </java-type>

но это не понравилось.

5
задан bdoughan 12 July 2012 в 13:25
поделиться