-
Notifications
You must be signed in to change notification settings - Fork 28
Open Lowcode Operation Guide
The following operation procedures are documented
- Development Platform setup
- Application Architecture
- Server Installation Prerequisites
- Operation Procedures
To develop your application with Open Lowcode framework, you need the following prerequisites:
- installation of a java development environment version 8 with javafx. If you do not have an Oracle JDK installed, you may want to install zulu JDK
- A java IDE supporting java 8. Open Lowcode development uses Eclipse 18/09, so it may be easier for you to use Eclipse.
You will need to:
- create a project in your IDE. (In Eclipse File / New / Project, then choose java project in the wizard, and enter your project name (e.g. OpenLowcode Beta Test)
- Unzip the Open Lowcode zip file directly in the project folder. To perform that, you can:
- Copy the beta zip file in the project root folder
- If you have 7-Zip, Use the 7 Zip option Extract here
- If you use standard Windows zip manager, click extract all, and be sure to remove the last element of the proposed classpath (highlighted in red) so that elements are unzipped under your Eclipse project folder directly
Open Lowcode is a 3-tier application framework. The diagram below shows the architecture.
The application server requires the following components:
- Mandatory: a database server amongst supported databases;
- Mandatory: an inbound connection from clients (PCs of users) to the server;
- Optional: a SMTP mail server (to send mail notifications and invitations);
- Optional: a connection to enterprise LDAP to allow login with user enterprise password.
The Open Lowcode server requires the following to be setup:
- a database server with a supported database (see next paragraph). A user / schema should be setup for each Gallium server:
The database user should have DDL (Data Definition Language) rights (create / update table / index…)
- The database should be configured so that unicode text can be stored.
- A backup service of the data should be setup. This will allow restoration of the Open Lowcode application in case of a server failure (see restore procedure)
- JDBC connection (port) should be opened from the Open Lowcode server to the database
- A regular purge of the log folder (either delete or archive) should be setup. It is recommended to purge the log folder regularly as the server may generate several100MB of log data per week
- An inbound port to be opened from all final users PC network to the server. One port is necessary for each Gallium Server instance running on the PC. Note: this requires
- (Optional) An outbound SMTP port to the e-mail server if the mail notification service is used
- (Optional) A JNDI port opened to the LDAP server to use authentication with enterprise password.
Open Lowcode server requires the following components on the server:
- Java Runtime 1.8 (1.8.051 or further)
- JDBC jar of the database (to be installed in the /lib) folder
- Operating System: any Unix or Windows operating system able to support the software above
Open Lowcode server supports the following databases:
- Derby embedded database engine (Apache Derby – 10.12.1.1 or further). This is most appropriate for a low cost development server. In this mode, there is only one database connection for the server, with performance limits.
- MariaDB version 10.2.6 or later 10.2. This is suitable for production usage.
Note: Other databases support can be added with a quick delay (around a week) by requesting it to Open Lowcode SAS for a fee, or alternatively by implementing necessary modifications yourself.
To start the server, it is necessary to configure the launch batch to be adapted to the environment. Below is shown an example of launch file (called launchserver.bat) on Windows. The batch would be called launchserver.sh on an Unix environment.
'java -classpath D:\java\ws\CSPData\lib\derby.jar;D:\java\lib\ext\jfxrt.jar;D:\java\ws\PT1\bin\OLcServer.jar;.\bin;.\lib\javax.mail.jar;.\lib\commons-logging-1.2.jar;.\lib\fontbox-2.0.7.jar;.\lib\pdfbox-2.0.7.jar;.\lib\commons-collections4-4.2.jar;.\lib\commons-compress-1.18.jar;.\lib\poi-4.0.1.jar;.\lib\poi-ooxml-4.0.1.jar;.\lib\poi-ooxml-schemas-4.0.1.jar;.\lib\xmlbeans-3.0.2.jar gallium.server.runtime.GalliumServer ./log/ 8080 bugkiller.app.Bugkiller;customersales.app.Customersales;gallium.pvts.Pvts true false null SSLPASSWORDSMTP ssl0.ovh.net 465 demauroy@gallium.tech DERBY D:\java8\ws\CSPData\derby OlcClient.jar'