CachedXFormTransformer
Transformer features and configuration
Overview
This transformer extends CachedXSLTransformer to insert transformed XForm XML (as supported by XMLForm). It combines the form features of struts (dynaforms, validation, etc) with the abstraction of XForms. The XForm transformation process inserts ActionForm values and ActionErrors into the XForm.
Features
- All the features of CachedXSLTransformer.
- Support for XForms
- Requires JVM 1.4+ (due to XMLForm dependency)
Configuration
Global
Property | Value | Status |
---|---|---|
mimeType | The mime type of the transformed content | Required |
autoReloadTemplates | true | false (default). If true, the cached Templates will be checked to see if the stylesheet has been modified since and reload as necessary. | Optional |
allowRenderParameter | true | false (default). If true, the type of rendering can be specified as a request parameter. For example, "render=client" will force a client-side transformation. | Optional |
resolveFromTemplatePath | false | true (default). If true, URIs used in xsl:import, or xsl:include are resolved from the directory of the parent stylesheet. Otherwise, URIs are resolved from the root directory of the web application. | Optional |
transformerFactoryClass | The name of the JAXP transformer factory implementation to use. | Optional |
Note
If you are having problems with NullPointerExceptions when stxx is loading stylesheets, it could be
because your servlet container doesn't implement request.getRealPath() in a useful manner. If this is the
case, set both resolveFromTemplatePath and autoReloadTemplates to "false" and
stxx will load the stylesheets using ServletContext.getResourceAsStream().
Transform-specific
These parameters are specified in stxx 1.2+ pipeline configuration format. See Configuring with Struts 1.1 for more information.
Parameter | Value | Status |
---|---|---|
path | The path to the XSL file | Required and can be repeated |
xform | The path to the XForm XML file | Required |
debug | true | false (default) | Optional |
render | client | server (default) | Optional |
attachRequestParameters | false | true (default) | Optional |
attachRequestAttributes | false | true (default) | Optional |
attachForm | false | true (default) | Optional |
attachResources | false | true (default) | Optional |
attachErrors | false | true (default) | Optional |
attachMessages | false | true (default) | Optional |
OTHER | Any other parameter will be passed to the XSLT as a stylesheet parameter. | Optional |
All transform parameters will be passed to the XSLT as stylesheet parameters
Examples
Global configuration:
stxx.transformer.xform.class=com.oroad.stxx.transform.CachedXFormTransformer stxx.transformer.xform.mimeType=text/html
Transform-specific configuration:
<pipeline match="xform/*.dox"> <transform type="xform"> <param name="path" value="/{1}.xsl" /> <param name="xform" value="/{1}.xml" /> <param name="render" value="server" /> </transform> </pipeline>
by Don Brown