Я занимаюсь разработкой веб-сервисов RESTful на Java с использованием Jersey, Tomcat и Toplink.Одно из моих требований - заменить ссылку на ресурс (person) на фактические данные XML (возвращаемые ссылкой на ресурс этого человека) в данных XML, которые возвращает моя служба «Клиент».Чтобы достичь этого, при вызове (метод GET) службы Customer я получаю вывод xml из ресурса Person и удаляю теги <person>
и </person>
из этих данных xml (поскольку моя служба Customer имеетсвойство «персона», куда я хочу вставить эти данные XML) и установить эти данные XML в свойстве «персона» ресурса «Клиент».
Вот мой вывод: выходные данные, возвращенные из службы поддержки клиентов:
<customer>
<person>http://localhost:8080/xxxx/resources/person/JONESTD</person>
<xxx>...... </xxx>
<xxx>...... </xxx>
......
......
......
</customer>
Вывод, возвращаемый службой поддержки клиентов, когда я использую строку запроса составной = человек (для замены URL ресурса человека фактическими данными) при вызове этой службы:
<customer>
<person><namePrefix>Mr.</namePrefix> <nameFirst>Timothy</nameFirst>
<nameLast>Jones</nameLast> <nameMiddle>D.</nameMiddle> <nameSuffix/>
<nameDisplayInformal>Timothy D. Jones</nameDisplayInformal> <nameDisplayFormal>Mr.
Timothy D. Jones</nameDisplayFormal> <nameSortedInformal>Jones, Timothy
D.</nameSortedInformal> <nameSortedFormal>Timothy, Jones D. Mr.</nameSortedFormal>
<username>JONESTD</username> <emailAddress>JONESTD@xxxx.xx</emailAddress> </person>
<xxx>...... </xxx>
<xxx>...... </xxx>
......
......
......
</customer>
Как видите, XMLСтрока, которую я установил в свойстве person ресурса Customer, не имеет правильного отступа.Если я просматриваю «Просмотреть исходный код», он показывает следующий вывод:
<customer>
<namePrefix>Mr.</namePrefix>
<nameFirst>Timothy</nameFirst>
<nameLast>Jones</nameLast> <nameMiddle>D.</nameMiddle>
<nameSuffix/> <nameDisplayInformal>Timothy D.
Jones</nameDisplayInformal> <nameDisplayFormal>Mr. Timothy D.
Jones</nameDisplayFormal> <nameSortedInformal>Timothy, Jones
D.</nameSortedInformal> <nameSortedFormal>Timothy, Jones D.
Mr.</nameSortedFormal> <username>JONESTD</username>
<emailAddress>JONESTD@xxxx.xx</emailAddress>
<xxx>...... </xxx>
<xxx>...... </xxx>
.......
.......
.......
</customer>
Я вижу эти <
и >
только в строке person xml, которую я установил в свойстве person.Я попробовал несколько вещей (включая StringEscapeUtils.unescapeHtml) для преобразования <
и >
в <
и >
(правильный xml).Но у меня ничего не получалось.Не могли бы вы дать мне некоторое представление о том, как я могу решить эту проблему?