Orbeon Persistence

This module adds the following features to Alfresco & Orbeon Forms:

  • Ability to store forms, drafts and instances into Alfresco
  • Automatically creates a forms drop down menu in Alfresco Share
  • Allows forms to be treated like documents within Alfresco, and use features such as:
  • Creation
  • Editing
  • Previews
  • Search
  • Workflow and Folder Rules

Changelog

The change log for Orbeon Persistence can be found here

Installation

Parashift's Orbeon Persistence to Alfresco comes with both a Share and Repo amp. Please follow our Installation guide on how to install this module. You will also require an instance of Orbeon forms.

Usage

Usage is broken into creating form definitions (what the form is and what fields/validations it has) and form instances (filling in an instance of the form)

Users will typically be creating instances, whereas administrators will be creating the form definitions.

Once a form definition is created, it is available to be used to create form instances.

Creating a Form Definition

You can create a new form definition from Alfresco Share:

  • Login to Share as a User who has permissions to create forms
  • Select Forms from Share navigation menu
  • Select Form Definition Creation

Creating a Form Instance

Once a form definition is created, then you can create a new form instance from Alfresco Share:

  • Login to Share as a User who has permissions to create forms
  • Select Forms from Share navigation menu
  • Select the Application name and Form name from the drop down

Editing a Form Instance or Definition

If you want to change an existing form instance or definition, you can navigate to the document library to change it.

  • Navigate to the Forms persistence folder (If not changed in configuration this is in Repository -> Data Dictionary -> Forms)
  • Find the form you want to edit
  • Select Edit Form Instance or Edit Form Definition from the actions list

Managing Form Definition Permissions

As form definitions are simply documents.

Installation (Orbeon)

Orbeon forms needs to be configured to use alfresco as the persistence provider. You also need to share your session cookies between Share and Orbeon.

With tomcat, if orbeon and share are on the same instance, this is accomplished by setting the sessionCookiePath to / within the context.xml file.

I.e,:

<?xml version='1.0' encoding='utf-8'?>
<Context sessionCookiePath="/">

    <WatchedResource>WEB-INF/web.xml</WatchedResource>

</Context>

You can also update the properties-local.xml in your orbeon instance:

<property as="xs:string"
      name="oxf.http.forward-cookies"
      value="JSESSIONID JSESSIONIDSSO" />

<property as="xs:string"
      name="oxf.fr.persistence.provider.*.*.*"
      value="alfresco"/>

<property as="xs:string"
      name="oxf.fr.persistence.alfresco.uri"
      value="http://localhost:8080/share/proxy/alfresco/api/orbeon" />

Installation (Alfresco)

  • Install the Amps to both Alfresco and Share

Configuration (Alfresco)

Forms are stored within Repository -> Data Dictionary -> Forms by default, but can be adjusted based upon some properties.

You can adjust the path of where forms are stored by adjusting the following global properties:

  • com.parashift.orbeon.basepath: The xPath of the base directory to store form data and draft directories.
  • com.parashift.orbeon.basepath.form: The xPath override of the form directory, if not in the normal basepath.
  • com.parashift.orbeon.basepath.data: The xPath override of the data directory, if not in the normal basepath.
  • com.parashift.orbeon.basepath.draft: The xPath override of the draft directory, if not in the normal basepath.

I.e, if you want to store all forms into a Forms site:

com.parashift.orbeon.basepath=PATH:\"/app:company_home/st:sites/cm:forms/cm:documentLibrary\"

If the path can't be found or returns null, then it will use the default path.