Upgrade Verj.io Studio from V5.x to V5.7

 

This document describes the procedure to upgrade the Verj.io Studio, including the embedded server, from any V5.x version to V5.7. If you are upgrading from a V4.x system, you must upgrade to V5.5 first.

Overview

Verj.io V5.7 is a landmark release in that it introduces a new file system layout for the installation that will enable future upgrades to be performed automatically. This new file system layout provides separation between the Verj.io distribution files which should not be changed by customers (the installation file system), and any customer configurable files (the userdata file system). Future upgrades will work by replacing the Verj.io distribution files.

 

In this upgrade, the new file system layout is installed and any configuration files that have been made in previous releases are manually copied to the userdata file system. This is a one-off exercise required only for this upgrade, and enables future upgrades to be handled automatically.

Note on reading and writing files

Customer applications that read or write files directly to/from the file system using relative paths may need to be changed e.g. ../../folder1. The reason is that all relative file paths are resolved at runtime relative to the serverís working directory which is tomcat/bin within the installation file system. The problem is that this file system will be replaced by a future Verj.io upgrade. Starting from this release, customers are recommended to store any such application files in the userdata file system which can be accessed using the Javascript services.file.getUserDataApplicationPath() method.

Installation

1.      Install Verj.io Studio V5.7 into a new directory. Do not install this on top of an existing Verj.io system.

See the ReadMe file for download links.

 

1.      Start the new studio - by running one of the verjio_studio.exe/bat/sh files in the Studio directory of your new V5.7 installation. This will also start the embedded test server. Wait for the embedded test server to come ready Ė the Manage Server icon in the top right-hand corner turns green.

2.      Copy configuration files from the previous version. The following steps are all optional and can be performed at any time after the installation.

 

In the instructions below:

 

        <userhome> refers to your user home directory.

o       On Windows this is typically C:/users/<userid>

o       On Linux/Mac this is typically /home/<userid>

        <userdata> is the userdata location specified when the new V5.7 Studio was installed. The default location is <userhome>/Verjio/Studio

        <verjioStudioOldHome> refers to the UfsClient folder of the old V5.x system e.g. C:/Verjio/5_5/VerjioStudio/UfsClient

 

Instructions:

        Close the studio

        Copy studio property/preference files - replacing existing files where applicable:

Watch out for the distinction between ďStudioĒ and ď.StudioĒ in the following instructions!

o       Copy all files from <userhome>/.Ebase/designer/properties to <userhome>/Verjio/.Studio/properties (these files will be shared between all instances of the Verj.io Studio)

o       Copy all layout files (xxx.layout) from <userhome>/.Ebase/designer/5.x to <userdata>/layout

o       Copy files designer.propertiesand entityHistory.xml from <verjioStudioOldHome>/properties to <userdata>/properties

o       Copy all files from <verjioStudioOldHome>/preferences to <userdata>/preferences

        Copy embedded server configuration files from the old system - replacing existing files where applicable (this step can be skipped if you donít use the embedded server):

o       Copy the ebaseConf folder from <verjioStudioOldHome>/IntegratedServer/ebasetest to <userdata>/embeddedServer/app

o       If youíve added any application server managed database connections to the old system then edit file <verjioStudioOldHome>/IntegratedServer/ebasetest.xml, extract the database connection XML elements, and add them to <userdata>/embeddedServer/tomcat/conf/ebasetest.xml. Do not copy the entire ebasetest.xml file from the old system.

o       Delete the UFS folder from <userdata>/embeddedServer/DB

o       Copy the UFS folder from <verjioStudioOldHome>/IntegratedServer/DB to <userdata>/embeddedServer/DB

o       Copy any JDBC drivers that you have added, from <verjioStudioOldHome>/IntegratedServer/lib to <userdata>/embeddedServer/tomcat/lib

o       Copy any additional web resource files and folders that you have added, from <verjioStudioOldHome>/IntegratedServer/ebasetest to <userdata>/embeddedServer/app/webapp. Any of the ufs* configurable files at the root of <verjioStudioOldHome>/IntegratedServer/ebasetest that you have changed should be included in this copy e.g. ufs_timeout_page_htm. Donít copy any of the standard folders shipped in the Verj.io ebase webapp (see <installation directory>/Studio/embeddedServer/webapp).

o       Copy the contents of <verjioStudioOldHome>/IntegratedServer/ebasetest/samples/logon to <userdata>/embeddedServer/app/webapp/samples/logon

o       Copy any additional jar or zip files that you have added from <verjioStudioOldHome>/IntegratedServer/ebasetest/WEB-INF/lib to <userdata>/embeddedServer/app/webapp/WEB-INF/lib. See Appendix 1 for a list of standard jar files shipped with the system Ė any files in this list or with the same prefix as a file in this list should not be copied.

o       Copy any additional files that you have added from <verjioStudioOldHome>/IntegratedServer/ebasetest/WEB-INF/classes to <userdata>/embeddedServer/app/webapp/WEB-INF/classes

o       If youíve made any changes to the old systemís web.xml file in <verjioStudioOldHome>/IntegratedServer/ebasetest/WEB-INF, extract your changes and add them to the web.xml file in <userdata>/embeddedServer/app/webapp/WEB-INF/web.xml.

o       Copy the contents of <verjioStudioOldHome>/IntegratedServer/generatedfiles to <userdata>/embeddedServer/app/generatedfiles.

o       Copy the contents of <verjioStudioOldHome>/IntegratedServer/generatedpdfs to <userdata>/embeddedServer/app/generatedpdfs.

o       Copy any velocity templates from <verjioStudioOldHome>/IntegratedServer/velocityTemplates to <userdata>/embeddedServer/app/velocityTemplates.

o       If folder <verjioStudioOldHome>/IntegratedServer/Backups exists in the old system, copy it <userdata>/embeddedServer/app.

o       If folder <verjioStudioOldHome>/IntegratedServer/Deployments exists in the old system, copy it to <userdata>/embeddedServer/app.

o       Edit the property files in <userdata>/embeddedServer/app/ebaseConf and change any references to relative paths in the properties in the table below. All references to file locations within the old systemís file system should be changed. You do not need to change any references to any file locations outside of the old systemís file system. Ignore any properties or property files that donít exist in your system.

 

File

Property

New value

Comment

workspace.properties

workspace.location

workspace

 

server.properties

Ufs.logDirName

logs

 

server.properties

Ufs.auditLogDirName

logs

 

server.properties

Ufs.pdfDirectoryName

generatedpdfs

 

server.properties

Ufs.fileDirectoryName

generatedfiles

 

server.properties

Ufs.printFontsDirectroy

printFonts

If this property exists and contains a relative file path, copy the fonts to <userdata>/embeddedServer/app/printFonts

deploy.properties

deployment.location

deployments

 

deploy.properties

backup.location

backups

 

velocity.properties

template.location

velocityTemplates

Add this property

velocity.properties

file.resource.loader.path

 

Remove this property

 

The following properties in server.properties can be ignored: Ufs.fileAccessRoot, Ufs.executableDir.

        If you have modified the FPL programming language e.g. to add custom functions, then:

o       Copy file FPL.jj from <verjioStudioOldHome>/LanguageBuilder/Fpl to <userdata>/fpl replacing the existing file

o       Copy file ufsLanguage.jar from <verjioStudioOldHome>/lib to <userdata>/fpl replacing the existing file if it exists

        If your old server has a Java trust store configured, copy the trust store file to <userdata>/security and rename it to truststore.

        Restart the studio

        Change the workspace

o       In the studio, switch the workspace (File > Switch workspace) to the workspace of your choice.

 

Support

Please contact Ebase Technology if you require any assistance.

 

email:support@ebasetech.com

Tel:     +44 (0)1767 654 987

 

Appendix 1: Shipped jar files in WEB-INF/lib

 

This appendix contains a list of the jar files shipped with the Verj.io system in WEB-INF/lib. Files with the same name or with a common prefix should not be copied into the corresponding WEB-INF/lib userdata folder.

 

 

Jar File

activation-1.1.jar

annotations-api-6.0.20.jar

apns-1.0.0.Beta6.jar

barcode4J-light.jar

bson-3.5.0.jar

castor-0.9.5-xml.jar

commons-beanutils_1.7.0.jar

commons-codec-1.9.jar

commons-collections-3.2.2.jar

commons-fileupload-1.3.1.jar

commons-httpclient-3.0.jar

commons-io-2.4.jar

commons-lang-2.4.jar

commons-logging-1.1.1.jar

commons-math3-3.1.jar

cos_26122008.jar

cxf-2.3.1.jar

DKIMforJavaMail.jar

ebaseCustomResource.jar

ebaseWebapp.jar

ehcache-core-2.4.2.jar

Flyingsaucer-9-120131eb.jar

guava-19.0.jar

httpclient-4.5.1.jar

httpcore-4.4.3.jar

icu4j_4_2_1_1.jar

images.jar

iText-2.1.7.jar

jackson-annotations-2.4.5.jar

jackson-core-2.4.5.jar

jackson-databind-2.4.5.jar

jackson-dataformat-xml-2.4.5.jar

jackson-dataformat-yaml-2.4.5.jar

Javaftpapi.jar

java-ipv6.jar

javamail-1.5.0.jar

Javamelody-1.76.0.jar

javassist-3.18.2.jar

jaxb-api-2.2.1.jar

jaxb-impl-2.2.1.1.jar

jaxen-1.1.1e.jar

jcommon-1.0.9.jar

jdom-1.0.jar

jfreechart-1.0.5.jar

jrobin-1.5.9.1.jar

jsass-5.7.3.jar

JSON-java-20160212.jar

jsoup-1.11.3.jar

log4j-1.2.16.jar

logkit-1.0.1.jar

lucene-analyzers-common-6.2.1.jar

lucene-core-6.2.1jar

lucene-highlighter-6.2.1.jar

lucene-memory-6.2.1.jar

lucene-queryparser-6.2.1.jar

mongodb-driver-3.5.0.jar

mongodb-driver-core-3.5.0.jar

msv.jar

oro.jar

rhinojs-1.7.11_Ebase_22072019.jar

saaj-api-1.3.jar

saaj-impl-1.3.2.jar

slf4j-api-1.6.1.jar

slf4j-log4j12-1.6.1.jar

stax2-api-3.0.1.jar

stax-api-1.0.1.jar

swagger-core-1.5.8.jar

swagger-models-1.5.8.jar

tagsoup-1.2.1.jar

ufs.jar

velocity-1.7.jar

woodstox-core-asl-4.0.8.jar

wsdl4j-1.6.1.jar

wss4j-1.5.8.jar

xfire-core-1.2.6.jar

xfire-java5-1.2.6.jar

xfire-ws-security-1.2.6.jar

xmlbeans-3.0.2.jar

XmlSchema-1.4.7.jar

xmlsec-1.3.0.jar