Hst Component Configuration Properties

This page describes the key configuration properties available for HST components in Bloomreach Content.

Overview of Key Properties

The following properties are commonly used to configure HST components:

  • hst:componentclassname: Specifies the fully qualified Java class name for the component. Define this property only for components that require custom behavior. If a component only renders a template and does not require Java logic, omit this property.
  • hst:template: Sets the repository-relative path to the template used for rendering the component. The path is relative to the hst:templates node.
  • hst:referencecomponent: Points to another component configuration to extend. The path is relative to the hst:configuration node.
  • hst:parameternames: A multivalued property listing the names of the component parameters.
  • hst:parametervalues: A multivalued property listing the values for each parameter defined in hst:parameternames.

For details on hst:template and hst:referencecomponent, see HstComponent Configuration. The sections below explain hst:parameternames, hst:parametervalues, and hst:componentclassname.

Component Parameters

You can configure parameters for a component using the multivalued properties hst:parameternames and hst:parametervalues. Both properties must be present and must contain the same number of values. Each entry in hst:parameternames corresponds to the entry at the same index in hst:parametervalues, forming a key-value pair.

Parameters not defined directly on a component are inherited from ancestor components. If a parameter is defined both on the component and an ancestor, the component's value takes precedence.

To access only the parameters defined on the component itself (excluding inherited parameters), use the localParameters map. Refer to the #getLocalParameter method in the BaseHstComponent JavaDoc for details.

SiteMapItems can also define parameternames and parametervalues. In this case, parameters are similarly inherited from ancestor items, though this is less common than on components.

Parameter values can include property placeholders such as ${1}, ${2}, etc. These placeholders are replaced with the corresponding wildcard values from the matched ancestor SiteMapItem nodes. You can also use parameter names as placeholders, for example ${name}. If the matched SiteMapItem defines a parameter name="foo", then a component parameter like theName=${name} will resolve to theName="foo". If a placeholder cannot be resolved, the parameter value is set to null.

hst:componentclassname

The hst:componentclassname property specifies the fully qualified class name of the Java class that implements the org.hippoecm.hst.core.component.HstComponent interface. For more information, see HstComponent Java Class.

Share Feedback
Page: /build/component-development/hstcomponent-configuration-properties
Section: Build
Category *
Hst Component Configuration Properties | Bloomreach Content Documentation