0

I'm trying to create a XML data feed with dotCMS. I can easily output the correct XML document structure in a .dot "page", but the http headers sent to the client are still saying that my page contains "text/html". How can I change them to "text/xml" or "application/xml"?

agnul
  • 12,608
  • 14
  • 63
  • 85

2 Answers2

0

Apparently there's no way to do it using the administration console. The only way I found is to add this line of (velocity) code

$response.setHeader("Content-Type", "application/xml")

to the top of the page template.

agnul
  • 12,608
  • 14
  • 63
  • 85
0

Your solution is the easiest. However there are other options that are a bit more work, but that would prevent you from having to use velocity to do the XML generation, which is more robust most of the time.

  1. DotCMS uses xstream to generate XML files (and vise versa). You could write a generic plugin to use this as well.
  2. An JSONContentServlet exists in dotCMS that takes a query and generates json or xml (depending on your parameters). It is not mapped on a servlet by default, but that is easy to add.
Koen Peters
  • 12,798
  • 6
  • 36
  • 59