2015-04-07 1 views
0

Я пытаюсь сериализовать пару объектов в xml с помощью simplexml в Java. У меня есть следующие объекты:Сериализовать список строк, где каждый элемент в списке является элементом в XML с помощью Java SimpleXml

@Root() 
class foo { 
    @ElementList 
    List<bar> foo; 
} 

@Root() 
class bar { 
    @Element 
    String bar; 
} 

и выход:

<foo> 
    <bar> 
     <bar>a</bar> 
    </bar> 
    <bar> 
     <bar>b</bar> 
    </bar> 
    ... 
</foo> 

, но то, что я хочу это:

<foo> 
    <bar>a</bar> 
    <bar>b</bar> 
    ... 
</foo> 

Любая идея, как это может быть достигнуто? Я работаю с устаревшим кодом и, к сожалению, вообще не могу изменить структуру xml. У меня такое ощущение, что мне, вероятно, нужно создать собственный сериализатор для объекта foo, чтобы внешняя панель не была сериализована. Благодаря!

+0

Если вы не можете изменить XML, почему бы не изменить класс Java? Например List foo; -> Список foo; – Vartlok

ответ

1

Я думаю, что вы можете использовать @Text annotation, чтобы добавить текст стержневого элемента:

@Root() 
class bar { 
    @Text 
    String bar; 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^