Преобразование XML в HTML на сервере

Перевод на русский © Виктор Смирнов, 2000
Оригинал статьи опубликован на сайте Javable.com

Java Q&A

Нужно, чтобы преобразование XML документа с использованием XSL происходило на сервере и чтобы клиент получал HTML документ вместо комбинации XML документа и описания стилей в формате XSL. Как лучше подойти к решению этой задачи?

Есть много способов преобразования из формата XML в HTML. Оптимально было бы оставить эту задачу клиенту, так как выполнение ее на сервере требует слишком много ресурсов. Заставляя клиента выполнять необходимые преобразования, можно снять часть нагрузки с сервера.

К сожалению, нельзя рассчитывать на клиента - не все броузеры поддерживают преобразование XML в HTML, и понадобится достаточно много времени, прежде чем все пользователи обновят свои броузеры. Приложение на сервере может определить тип броузера и, в случае если он поддерживает XSL преобразование, передавать клиенту XML и XSL. Но это не самый удачный подход, возникают значительные трудности при поддержке.

Как выполнить преобразование на сервере? Возможны два подхода: использование сервлетов и JSP. Для выполнения преобразования на основе XSL понадобится XSL парсер. К счастью, есть отличные свободно распространяемые парсеры. (Важно еще и то, что можно получить бесплатную поддержку, например, задавая вопросы в соответствующие списки рассылки. - Смирнов).(см. Ресурсы).

Обзаведясь парсером, легко можно реализовать преобразование из XML в HTML в сервлете или на JSP странице. Механизм преобразования для этих случаев во многом одинаков. Нужно передать XML и XSL файлы парсеру, а полученный HTML документ отправить пользователю в качестве ответа на запрос.

Если вы не знакомы с сервлетами и JSP, рекомендую вам обратить внимание на проект Tomcat - "эталонную" реализацию для этих технологий. Дистрибутив содержит документацию и примеры.(см. Ресурсы)

В зависимости от сложности XML документа вы можете решить полностью отказаться от применения XSL преобразования. Рекомендую посмотреть статью "Совместное использование XML и JSP", в ней обсуждаются вопросы преобразования XML в HTML с использованием JSP. Представлен другой подход к решению описанной проблемы без использования XSL. Так же в статье приводится обширный список ссылок.

Об авторе

Тони Синтес работает старшим консультантом в ObjectWave, специализируясь на телекоммуникациях. Тони работает с Java начиная с 1997 года и является Sun-certified Java 1.1 программистом и Java 2 разработчиком.

Ресурсы

Relevant articles

Reprinted with permission from the March 2000 edition of JavaWorld magazine.
Copyright © ITworld.com, Inc., an IDG Communications company.
View the original article at: http://www.javaworld.com/javaworld/javaqa/ 2000-04/03-qa-0428-xml.html



Опубликовал admin
24 Окт, Воскресенье 2004г.



Программирование для чайников.