Learn how to deploy Rollbase low-code applications on a JBOSS EAP server in both domain and standalone mode.
In this blog post we will learn to configure Progress Rollbase on JBOSS EAP. Rollbase is a low-code platform that helps create all sorts of applications at an unprecedented speed and efficiency. Rollbase can run on JBOSS Domain and Standalone operative modes. This feature is only available on private cloud starting in Rollbase v4.3.
You can download JBOSS EAP by visiting the official download page. Before you start with the setup, please make sure you have looked at the required pre-requisites. For the sake of this blog, we will use JBOSS 6.3.0 EAP zip file. Unzip the file into your desired directory and let’s call it JBOSS_HOME.
As a first step, you must obtain the Rollbase artefacts:
This zip file contains all the necessary libraries for the platform to function. This file would also comprise a module.xml. We will discuss about the file little later in this blog.
This zip file contains all the necessary web archives which comprise the platform. There should eight .war files: master, prod1, rest, router, search, storage, webapi and workflow. These are the applications we would be deploying on JBOSS EAP.
This zip file contains all the necessary configuration and resource files for the platform to function.
Starting in JBOSS EAP 6.0, the class loading approach has been significantly modified. It now uses a new modular class loading system for controlling the paths of deployed applications.
In order to use the Rollbase libraries, we will now see how to configure a static module in JBOSS EAP.
global-modules>
<
module
name
=
"rb.lib"
slot
=
"main"
/>
</
global-modules
>
<
subsystem
xmlns
=
"urn:jboss:domain:ee:1.2"
>
<
global-modules
>
<
module
name
=
"rb.lib"
slot
=
"main"
/>
</
global-modules
>
<
spec-descriptor-property-replacement
>false</
spec-descriptor-property-replacement
>
<
jboss-descriptor-property-replacement
>true</
jboss-descriptor-property-replacement
>
<
annotation-property-replacement
>false</
annotation-property-replacement
>
</
subsystem
>
With these three simple steps we have configured all the required Rollbase libraries as a static module in JBOSS. These libraries can now be used by the deployed applications.
As a next step, let's drop the platforms configuration files in their right location.
In case of standalone mode, go to “JBOSS_HOME/standalone” and unzip the rollbase.zip archive. In case of a domain mode, do the same for each of the servers i.e. “JBOSS_HOME/domain/servers/<server_name>.” In case the “servers” folder is not available, please run the “domain.bat” from “JBOSS_HOME/bin.”
You will have to set defaults for properties in these configurations. Please refer to the Rollbase documentation below on how to do this:
JBOSS relies on the module.xml to load the required resources for the applications. There may be scenarios when you would need to add your own .jar resource as a dependency. We will look at how to do it in this section.
Let’s look at a use case where there is a need to add a mysql jdbc driver to the ROLLBASE_LIBSas dependency.
Before proceeding with the deployment, please make sure a management user has been created in JBOSS EAP. This can be done by running the add-user.bat/sh from “JBOSS_HOME/bin.”
We are now all set to start the application deployment.
Now, run the appropriate .bat file to start the JBOSS application server:
Once the JBOSS application server has started, go to management console (usually <hostname>:9990). When prompted for credentials, enter the management user credentials.
On successful login:
Here you can start adding the wars. After the wars are uploaded, deploy them using “Assign” in domain mode & “En/Disable” in standalone mode.
Once the wars are deployed successfully, you are all set to start using Rollbase. Type in the url linked here in the browser and voila!
By now, we have learnt how to deploy Rollbase on JBOSS EAP. The setup has been carefully designed to be a fairly simple process. The same approach can be followed to setup Rollbase on Wildfly. Also known as JBOSS AS, it is a community version of JBOSS. Please note, however, that this is not yet officially supported by Rollbase.
Curious to try it for yourself? Learn more about Rollbase or start your free trial today.
Manooj Murali is a Principal Software Engineer at Progress. He has been part of the Rollbase development team in Hyderabad for more than two years and has more than 8 years of experience overall in software development. He has led many feature developments like I18N, Marketplace, White-Labelling, JBOSS support, High Availability and more for Rollbase.
Let our experts teach you how to use Sitefinity's best-in-class features to deliver compelling digital experiences.
Learn MoreSubscribe to get all the news, info and tutorials you need to build better business apps and sites