Страница 1 из 1

Помогите нEучу.... Java + xml

Добавлено: 14 сен 2012, 11:51
Mel'nik
Чето стало скучно и захотелось как нить красиво и удобно почитать атом фид, с кастомными тегами.
Потипу

Код: Выделить всё

<feed>
    <id>123<id>
    <autor>Bob<author>
    <entry> 
		<custom:payload>
				<customers>
					<customer>
						.....
					</customer>
					<customer>
						.....
					</customer>
				</customers>
        </custom:payload>
    <entry>
</feed>
И тут я решил прикрутить какойнить Rome, или xstream. Сделал бины для модели, аннотировал, все довольны все смеются. Есть только одно но, пейлоад у фида может быть и такого вида, как бы можно под каждый вид свой фид сконфигуриривать, но их реально дофига и ленно как то.

Код: Выделить всё

<feed>
    <id>123<id>
    <autor>Bob<author>
    <entry> 
		<custom:payload>
				<customer>
					.....
				</customer>
        </custom:payload>
    <entry>
</feed>
<xml>
    <id>123<id>
    <autor>Bob<author>
    <entry> 
		<custom:payload>
				<someOtherCrap>
					.....
				</someOtherCrap>
        </custom:payload>
    <entry>
</xml>
В риме этом он вообше пишет ForeighMarkup где у меня пейлоад начинается, и видимо кастом kонвертер к нему не прикрутить, поэтому пошел смотреть в xstream и jaxb, но им один фиг с их рефлекшином нужны или аннотатиции либо переменные с таким же именем и правильным типом как и тег. Короче как то я в замешательстве, вроде и задача тривиальная, а как сделать правильно не знаю :-( Может в какое нить дерево пейлоад писать, хотя xml уже парсится как дерево, а хотелось бы красиво.

Re: Помогите нEучу.... Java + xml

Добавлено: 14 сен 2012, 12:51
Дима
Для каждого вида фида все равно придется парсер создавать :) Я бы, наверное, прикрутил XSLT с преобразованием в XML одинакового вида, ну а затем уже xstream.

Re: Помогите нEучу.... Java + xml

Добавлено: 14 сен 2012, 17:26
Mel'nik
Ща подумал, може в xstream custom converter написать ну или экстендить че, чтобы контент был типа обьект, а в нутрях анмаршал из спринговых конфигов грузил контент для конкретной модели. Hа выходных выношу идею и буду в понедельник курить. Ну или кто еще вариаты какие подкинет.