360 WebPlatform database configuration is not set when restarting tomcat server

360Suite database configuration is not set when restarting Tomcat server

Symptoms

  1. On application startup, a warning popup appears

  1. In the Administration console, the database configuration is empty even though is was setup previously

Environment

  • 360Suite Web Platform
  • Linux server (all)

Additional symptoms : tomcat logs

In tomcat startup logs you can see this warning :
  1. 24-Aug-2020 11:50:47.195 WARNING [Catalina-utility-1] java.util.prefs.FileSystemPreferences$2.run Could not create system preferences directory. System preferences are unusable.
Moreover, digging into 360Suite specific log you can see this template :
  1. ==========================================================================
  2. Starting 360Suite v{your version}
  3. ==========================================================================
  4. {systemRoot}.systemPrefs
  5. ==========================================================================
{systemRoot} should be set to /etc/.java or the value you set for java.util.prefs.systemRoot parameter.

Cause

Startup process

On linux systems, 360Web Platform configuration properties such as database URL are stored into java systemRoot preferences directory.
To ease the administration of the preferences you can customize the folder where preferences are stored by setting java system variables :
  1. java.util.prefs.systemRoot
  2. java.util.prefs.userRoot
Those variables are defined in the Tomcat setenv.sh as java options, for example :
  1. JAVA_OPTS="$JAVA_OPTS -Djava.util.prefs.systemRoot=$HOME/.java -Djava.util.prefs.userRoot=$HOME/.java/.userPrefs"

File system hierarchy

Before starting up 360Suite Web Platform performs an existence check on the preference directory.
For the system to properly run, the following command must return a result :
  1. ls -la /your/systemRoot/path | grep systemPrefs
If this command fails and outputs nothing this means your preference directory is not ready for 360Web Platform.

Resolution

Stop your Tomcat server.
Create the directory thanks to this command :
  1. mkdir --mode 755 -p /your/systemRoot/path/.systemPrefs
Then, ensure the directory belongs to the user who will run Tomcat.
  1. chown my-tomcat-user:tomcat-user-group /your/systemRoot/path/.systemPrefs
Start your Tomcat server
    • Related Articles

    • Change Tomcat after 2025.1 upgrade

      Context To prepare for BI 2025 moving away from Java 8, we migrated from Java 8 to Java 21. This migration impacts everyone doing update from previous version, as the version used for Tomcat is not compatible anymore, as Java 21 requires a Tomcat 10 ...
    • Does Apache Tomcat belongs to Product Support scope?

      Context Does Apache Tomcat belong to Product Support scope? Answer Apache Tomcat, a free open-source third-party Web application server, is bundled with 360Suite (a Wiiisdom product) for convenience of use, but is not considered part of the ...
    • DB011/DB02 - How to configure the 360Suite database with SQL Server AD Domain account

      Symptom When configuring the database in the Web Platform Administration Console with a AD Domain account for SQL Server, you encounter one of the following errors : - DB012: Could not find driver - DB011: This driver is not configured for integrated ...
    • How to expand Dataprovider SQL Query column in 360Eyes database

      Symptom When running 360Eyes Impact Analysis Reports (such as Report 52), users observe that the SQL query stored in the 360eyes_REPORTS.unx / Eye Document / Dataprovider / Dataprovider Sql Queryfield is incomplete, partial or truncated. This often ...
    • Tomcat memory issue

      Symptoms Relevant information: Error about memory issue in a 360Suite task Error message(s): "java.lang.OutOfMemoryError: GC overhead limit exceeded" Information location: Visible in the task logs and / or the tomcat logs Environment Product: ...