OutSystems – Java / WebLogic related bugs

      No Comments on OutSystems – Java / WebLogic related bugs

Installing, configuring and working with the OutSystems platform on an Oracle stack (Orcle linux, Oracle WebLogic and Oracle database) made me run into some bugs. This posts lists some of the problems/bugs I ran into.

#1 – Using non-suggested installation paths and users

To install the OutSystems platform server, OutSystems created an installation checklist for the .NET and Java stacks. These checklists are a great way to get the platform server installed. They contain step-by-step instructions. When following the checklist on a complete “red-stack” (Oracle Linux, Oracle WebLogic and Oracle database), the checklist suggests some default installation paths and operating system users in the instructions.

Oracle recommends to use a non-privileged user when installing WebLogic server
For the purpose of this document we will assume the wls_outsystems user.

For the Oracle WebLogic application server the following assumptions are made in the installation checklist:

  • Installation path (ORACLE_HOME) – /opt/Oracle/Middleware
  • (Installation) User – wls_outsystems

Many companies use their own standards for the installation and configuration of software on their systems, so I wanted to know if everything works when we use a non-default installation path and user for the WebLogic installation. So I installed WebLogic using user oracle and using the path /u01/app/oracle/middleware.

Up until the execution of the configurationtool.sh script, all worked as expected. Although the configurationtool.sh script executed, and did not exit during the errors show below, there were some worrying errors in its output:

[root@xxxxxxxx] ]# /opt/outsystems/platform/configurationtool.sh
Initializing...
Registering JCE libraries in /etc/alternatives/java_sdk_1.8.0/jre/lib/security/
Please indicate the Middleware Home (eg. /opt/Oracle/Middleware):
/u01/app/oracle/middleware
cp: cannot create regular file `/opt/Oracle/Middleware/oracle_common/modules/oracle.jdbc_12.1.0/': No such file or directory
cp: cannot create regular file `/opt/Oracle/Middleware/oracle_common/modules/oracle.jdbc_12.1.0/': No such file or directory
cp: cannot create regular file `/opt/Oracle/Middleware/oracle_common/modules/oracle.jdbc_12.1.0/': No such file or directory
cp: cannot create regular file `/opt/Oracle/Middleware/oracle_common/modules/oracle.jdbc_12.1.0/': No such file or directory
cp: cannot create regular file `/opt/Oracle/Middleware/oracle_common/modules/oracle.jdbc_12.1.0/': No such file or directory
cp: cannot create regular file `/opt/Oracle/Middleware/oracle_common/modules/oracle.jdbc_12.1.0/': No such file or directory
chown: invalid user: `wls_outsystems:wls_outsystems'

It seems that the “suggested” path /opt/Oracle/Middleware and the user wls_outsystems are hardcoded in the configuration tool.

I had a support case opened with OutSystems support and after replaying the installation, with the same path and user I used, on their own systems, they were able to reproduce these errrors and confirmed this as a bug with installation of the platform server on WebLogic.

For us, it was not problem to install WebLogic in the suggested installation directory and with the suggested user, so we were able to install the platform servers. OutSystems will probably fix this problem in future versions of the platform server, but if you cannot use the suggested cofiguration, I would open a support case with OutSystems support and have them fix the problem. I guess it will be a minor fix for them.

#2 – Service Studio uses wrong URL the first time you open the browser

A bug that appears to only happen when running OutSystems platform server on WebLogic, is that when you go to your application using the blue arrow button in Service Studio, the browser gets opened using the wrong URL for your application.

OutSystems Service Studio Open Browser

Open Browser

For some reason the name or IP address of the system you are running Service Studio on is used in the URL, or (if used) the name of the reverse proxy server that is between your system running Service Studio and the platform server.

The workaround is simple; when you click the button again, the correct URL is used and everything works fine. This proble only occurs the very first time after you opened your application in Service Studio.

This problem is acknowledged by OutSystems support as a bug, that seems to only appear on OutSystems Platform Servers running on WebLogic. Support has send the information to the R&D department to have this fixed in future versions.