How to generate complex web forms? Orbéon of course!
We use Orbéon for projects with complex forms. This article offers an overview of the new features of Orbéon.
What use for Orbéon?
For those who don't know what Orbéon is, a reminder is necessary: Orbéon is a tool allowing to manage complex web forms based on the XForms standard. The generated forms are thus adaptive according to the underlying XML model, valid with respect to this model and can use business controls from the XML schema.
Orbéon is composed of different tools:
Form Builder: is a graphical editor that is used to define a form visually in a browser. It is possible to add controls, validation, internationalise the form, produce XHTML and PDF output, ... and finally deploy the built form to the run tool. It should be noted that the built form is "responsive design" and adapts well to displays on smartphones.
Form Runner: as its name suggests, this is the tool that will "run" a form, i.e. make it editable on the web, allow the execution of the actions defined in it, manage the input workflow and ensure the persistence of the information entered by the user.
A small diagram illustrates the relationship between builder and runner:
In terms of deployment, Orbéon is a bit old. It is a monolithic application deployable as a war on a J2EE server (tomcat / websphere or other).
The forms exposed by the runner can then be accessed via one of the following modes:
- Via url (by redirection or by including an iframe),
- By REST API to access persisted data,
- By defining a mapping between the form fields and a REST API exposed by the application that wishes to access the form
- By inclusion as a Liferay portlet or JSP.
Big improvements on the builder which becomes more ergonomic in version 2017.2.
An API that allows you to run a virus scan directly when uploading attachments.
A replication process to manage high availability:
A useful component for example for delivery forms to manage manual signatures.
The JSon support support to allow the reception of data in this format.
A significant improvement in indexing performance when using an SQL database.
A system of hierarchical permission system for managing organisations.
The price page is available here.
An average solution consisting of a test server, an integration server and two production servers (for high availability) costs about $8000 per year.
Are you interested in this topic?