Address java.lang.ProcessEnvironment Initialization Errors After Server Reboot
search cancel

Address java.lang.ProcessEnvironment Initialization Errors After Server Reboot

book

Article ID: 444764

calendar_today

Updated On:

Products

CA Single Sign On Agents (SiteMinder)

Issue/Introduction

You observe policy server fails to startup following a Linux OS patching activity and a system reboot. The Policy Server logs (smps.log) contain the following error sequence:

[AssertionGenerator.java][ERROR][sm-FedServer-00120] postProcess() throws exception: java.lang.NoClassDefFoundError: Could not initialize class java.lang.ProcessEnvironment

And then a lot of:

[AssertionGenerator.java][ERROR][sm-FedServer-00120] postProcess() throws exception: java.lang.NoClassDefFoundError: Could not initialize class com.netegrity.SAML2Security.SAML2EncryptDecrypt

Environment

  • Product: SiteMinder (reported in version 12.9)
  • Operating System: Linux

Cause

The issue is caused by a "post-reboot storm" where multiple services start simultaneously, leading to a temporary exhaustion of system resources (such as process limits, memory, or file handles). If the Policy Server JVM tries to initialize its environment access at the exact moment resources are unavailable, the java.lang.ProcessEnvironment class fails to load. The class remains in an error state for the life of the process, causing subsequent class (such as SAML2EncryptDecrypt) initialization failure.

Resolution

Delay Policy Server Startup

You can resolve this by delaying the startup of the Policy Server to allow the operating system to complete other service initializations and stabilize resource availability.

  1. Locate your Policy Server auto-startup script (init script, or a script used by systemd service file).

  2. Modify the script to include a sleep command before the policy server "start-all" script. For example,  

    sleep 120

Verify System Limits

Consult your Linux administrator to ensure the system limits are sufficient to handle the concurrent startup of all services. Check and increase the following if necessary:

  • Process Limits: nproc
  • Open File Limits: nofile
  • Systemd TasksMax: If applicable to your distribution.