Links within "IMG" and "FORM" tags are not rewritten (in contrast to links within "A" tags)
In order to enhance the rewriting pipeline, you can do so by implementing a custom RewriterTransformerFactory [1]. This is an optional component used to extend the existing rewriting mechanism. Such a RewriterTransformerFactory must provide a Transformer [2] implementation through which the html to be rewritten passes as SAX events. In order to ease the implementation of custom rewriter transformers, an AbstractContentHandler [3] class is available for extension which provides default implementations of methods specified by the org.xml.sax.ContentHandler interface.
An example skeleton could look like this:
package x.y.z; import com.day.cq.rewriter.pipeline.AbstractContentHandler; import com.day.cq.rewriter.pipeline.RewriterTransformerFactory; import com.day.cq.rewriter.pipeline.Transformer; /* * * @scr.component metatype="no" * @scr.service * @scr.property name="service.ranking" value="-100" type="Integer" */ public class MyRewriterTransformer extends AbstractContentHandler implements RewriterTransformerFactory, Transformer { // override startElement method public void startElement(String uri, String loc, String raw, Attributes a) throws SAXException { // implement your custom link rewriting here } public Transformer createTransformer() { return new MyRewriterTransformer(); } }
Please note that the value of the service-ranking influences the order when this rewriting transformer will be triggered. See [1] for more details on that.
CQ 5.2.x
[1] http://dev.day.com/content/docs/v5_2/cq-wcm-javadoc/index.html?com/day/cq/rewriter/pipeline/RewriterTransformerFactory.html
[2] http://dev.day.com/content/docs/v5_2/cq-wcm-javadoc/index.html?com/day/cq/rewriter/pipeline/Transformer.html
[3] http://dev.day.com/content/docs/v5_2/cq-wcm-javadoc/index.html?com/day/cq/rewriter/pipeline/AbstractContentHandler.html
Sign in to your account