Install Persistence Layer

Install Persistence Layer for GemStone/S

Install Orbeon Persistence Layer for GemStone/S [See the video library here] (https://github.com/brunobuzzi/OrbeonPersistenceLayer/wiki/Persistence-Layer-Video-Library) The packages are going to be availabe here on Github (coming soon) as a regular Git project and in Squeak Source repository (http://ss3.gemtalksystems.com/ss/OrbeonBridge/) as Monticello packages. Install using Git repository (coming soon) Install using Squeak Source repository Execute the following code inside GemStone/S in order. Upgrade Grease framework to the last version:

"Upgrading to the last version of <GsUpgrader-Core>"
Gofer new
package: 'GsUpgrader-Core';
url: 'http://ss3.gemtalksystems.com/ss/gsUpgrader';
load.
(Smalltalk at: #GsUpgrader) upgradeGrease.

Install Seaside Web and Rest Server:

"Installing SEASIDE 3.1 (the REST and Web server)"
GsDeployer deploy: [
Metacello new
baseline: 'Seaside3';
repository: 'github://GsDevKit/Seaside31:gs_master/repository';
onLock: [:ex | ex honor];
load: 'CI' ].

Install the Persistence Layer for GemStone/S:

"Installing the Orbeon Persistence Layer"
GsDeployer deploy: [
Metacello new
configuration: 'OrbeonPersistenceAPI';
version: #stable;
repository: 'http://ss3.gemtalksystems.com/ss/OrbeonBridge';
onLock: [:ex | ex honor];
load.
].
OrbeonApplication initializeAllCache.

By default the attachment path is /opt/orbeon-files/ in this directory execute:

sudo mkdir temp
sudo mkdir drafts
sudo mkdir instances
sudo mkdir definitions
cd definitions/
sudo mkdir saved
sudo mkdir published

To change the default attachment path evaluate:

OrbeonApiConfiguration default baseAttachmentPath: 'myPathHere'

You have to create the subdirectories as above. Orbeon Properties-local.xml Configuration In Orbeon in properties-local.xml file add the following options: (change the ip address of [oxf.fr.persistence.gemstone.uri] to suit your needs)

<property as="xs:string" name="oxf.fr.persistence.provider.*.*.*" value="gemstone"/>
<property as="xs:anyURI" name="oxf.fr.persistence.gemstone.uri" value="http://192.168.29.133:8888/orbeon-gemstone-api"/>
<property as="xs:boolean" name="oxf.fr.persistence.gemstone.versioning" value="true"/>
<property as="xs:boolean" name="oxf.fr.persistence.gemstone.permissions" value="true"/>
<property as="xs:boolean" name="oxf.fr.persistence.gemstone.autosave" value="true"/>

If you are going to use BPM Flow + Orbeon then also set: <property as="xs:boolean" name="oxf.fr.persistence.gemstone.lease" value="false"/>

If you are going to use only Orbeon Persistence Layer then set: <property as="xs:boolean" name="oxf.fr.persistence.gemstone.lease" value="true"/>

In a GemStone/S session evaluate the following to register the services and start the REST server:

"Register the services -this is execute only one time-"
WAAdmin register: WAOrbeonPersistenceLayer at: 'orbeon-gemstone-api'.
"Start the Zinc server to start the REST services"
"When shutdown/restart the server/application must be executed again"
[WAGsZincAdaptor startOn: 8888]
on: AlmostOutOfMemory enable
do: [:ex | ex error: ex description].

If you have any question about Orbeon: http://discuss.orbeon.com/ If you have any question about GemStone/S: http://forum.world.st/GLASS-f1460844.html‚Äč