• TARGET-AUDIENCE: *beginner* advanced expert
  • COCOON-RELEASES: 2.0.3, 2.0.4
  • DOCUMENT-STATUS: *draft* reviewed released

ResponseHeaderTransformer

This is a simple transformer that allows you to set HTTP response headers from the content of the XML that flows through the pipeline.

Other ways to set response headers are:

  <map:act type="header">
    <map:parameter name="Cache-Control" value="no-cache" />
  </map:act>
  • Flow, which takes the header from a Flowscript:
  cocoon.response.setHeader("Cache-Control", "no-cache")

The ResponseHeaderTransformer is different from either of these methods, because it takes the header names and values from the XML that is processed by the pipeline.

Usage

Declaration in sitemap:

  <map:transformers default="xslt">
    <map:transformer name="response-headers" src="org.apache.cocoon.transformation.ResponseHeaderTransformer"/>
  </map:transformers>

Usage in pipeline:

  <map:transform type="response-headers"/>

The transformer will look for elements in the "http://apache.org/cocoon/responseHeader/1.0" namespace:

<header:set name="Cache-Control" value="no-cache"
  xmlns:header="http://apache.org/cocoon/responseHeader/1.0"/>

These elements are removed from the XML, and the header (Cache-Control) is set (to "no-cache").

Source code

ResponseHeaderTransformer.java

  • No labels