OneWelcome Access uses the Thymeleaf template engine to serve pages to the end user via a browser. The templates can be customized to align their look and feel with your mobile application or company standards.
Access uses template sets that contain one or more custom templates. The default template is used when a specific template is not available in the template set. One custom template set can be marked as the default template set for all applications and web clients.
Customized templates can be uploaded and managed via the Self Styling application. To add the new template set, follow the directory structure in the configured git repository. Refer to the default template set to further customize templates.
In the templates, the Thymeleaf Layout Dialect and Thymeleaf With Dialect are supported. The template file names are hardcoded and should not be changed in the custom template set. The internals of the template, like message keys and fragments, can be different. For more details about the different templates supported by Access see the templates section in the appendix.
Configuring an application-specific template set
For each mobile application and web client, a template set can be configured to render screens in the look and feel of this application or web client. When no template set is configured for an application or web client, the default template set is used to render these screens.
Access resolves templates in the following order:
- The template set configured for the application or web client of the current request.
- When the template is not present in this set, the default template set.
- When no default template set is available, we fall back to the templates bundled with Access.
Hidden form inputs
Some templates and fragments contain a hidden form input to submit a Cross-Site Request Forgery (CSRF) token. These fields are required for the application to function properly. Do not remove these input fields from the templates.
- Embed the static resources in the HTML of the templates. The downside is that the client cannot cache the static resource.
- Serve the static resources via your own content management system.