Advanced

Advanced topics

 

Generator: GetContentFileAuto

Class name:org.weborganic.bastille.psml.GetContentFileAuto
Version:0.7.5 - 25 October 2012
Library:Bastille
Cacheable:Yes
Generated:2012-12-21

Description

This generator returns the content of a PSML file using the Berlioz path from content folder.

This generator behaves as if its were using the Berlioz path as path parameter of the GetContentFile generator

The Berlioz path depends on the mapping of the Berlioz servlet in the Web descriptor (web.xml) and usually corresponds to the value of the '*' in the path component of a matching URL. The Berlioz path is then appended to the /content folder and added the '.psml' extension. to identify the file to load.

MappingURLPathFile
/html/*/html/test/acme/test/acme/content/test/acme.psml
*.html/test/acme.html/test/acme/content/test/acme.psml
*.html/test.html?x=123#abc/test/content/test.psml
*.xml/test/acme.xml/test/acme/content/test/acme.psml

Configuration

No configuration is required.

The root of the PSML folder can be configured using the global property bastille.psml.root which can be either an absolute path or a relative path from the global repository.

By default, the PSML root is set to "psml" which usually corresponds to the /WEB-INF/psml folder of your Web application.

Parameters

This generator does not accept or require any parameter.

Returned XML

Like most PSML generators returning a PSML file, this generator will wrap the content of the file with the <psml-file> element.

The @base attribute is the relative path from the PSML root to the folder, since references (xrefs and image sources) in PSML are relative, this attribute can be used to construct the path to images or cross-referenced documents.

See below:

<psml-file name="[file name]" base="[base path]" status="[status]">
  <!-- PSML content -->
</psml-file>

Error handling

If the file cannot be found or read, this generator will return the following:

<psml-file name="[file name]" base="[base path]" status="not-found">
Unable to find file: [path]
</psml-file>

The status of this generator will be set to 'NOT_FOUND'.

Usage

Below is the code to includes in the services:

<generator class="org.weborganic.bastille.psml.GetContentFileAuto" ... />

Created on , last edited on