Если вам нужно использовать формат, отличный от HTML, вам следует использовать сервлет вместо JSP.Таким образом, вы не зависите от спецификаций JspServlet и / или appserver, как генерируется вывод.В большинстве случаев вы просто не можете это контролировать.
Использование сервлета относительно просто.Создайте класс, который extends HttpServlet
, и реализуйте метод doGet()
следующим образом:
response.setContentType("text/x-vcard");
response.setCharacterEncoding("UTF-8");
PrintWriter writer = response.getWriter();
writer.write("BEGIN:VCARD" + (char) 10);
// ...
Сопоставьте это с web.xml
на url-pattern
из /vcard/*
или *.vcf
или любым другим и используйтезапрос к сервлету / pathinfo / params для динамического генерирования вывода на основе URL.