Error while deploying IDMRPT-AUTH during JBoss startup

  • 7008522
  • 05-May-2011
  • 26-Apr-2012

Environment

Novell Identity Manager 4.0 Advanced Edition
Novell Identity Manager 4.0.1 Standard Edition
Novell Identity Manager 4.0.1 Advanced Edition
Novell Roles Based Provision Module 4.0
Novell Identity Reporting Module
Microsoft Windows 2008 64 bit
Microsoft Windows 2008 R2 64 bit

Situation

The following error messages are displayed in the server.log during startup of JBoss on Microsoft Windows 2008 64 bit.
 
INFO  [TomcatDeployment] deploy, ctxPath=/IDMRPT-AUTH
INFO  [Configuration] Loading system based configurations for auth server.
ERROR [Configuration] Authentication server configuration's LDAP server URI or user container are missing.
[STDOUT] ERROR: Authentication server failed to start due to incorrect configuration.
[[/IDMRPT-AUTH]] Exception sending context initialized event to listener instance of class com.novell.idm.rpt.auth.server.j2ee.InitListener
java.lang.IllegalStateException: Configuration is incorrect

Resolution

This issue is only seen when using the standalone installers for RBPM and the Identity Reporting Module. This is due to the fact that the standalone installer for RBPM installs the 64 bit JRE by default whereas the Identity Reporting Module requires the 32 bit JRE.

Both RBPM and the Identity Reporting Module use the JRE which is specified as the JAVA_HOME in the start-jboss.bat file. Therefore, the problem can be resolved by providing the path to the 32 bit JRE in the start-jboss.bat file.

To address this issue, open the start-jboss.bat file and edit the JAVA_HOME and PATH entries to point the 32-bit Java and restart JBoss. This will typically be in the JBoss install directory.

To prevent this issue from happening, the 32 bit JRE can be specified during the installation when the installer asks which Java should be used.

Also, the 64 bit JRE can be used for an RBPM installation without the Identity Reporting Module.

Additional Information

The architecture of the JRE used by JBoss is displayed in the boot.log file. This information can be used to determine whether the 32 or 64 bit JRE is being used.

INFO  [ServerInfo] Java version: 1.6.0_23,Sun Microsystems Inc.
INFO  [ServerInfo] Java Runtime: Java(TM) SE Runtime Environment (build 1.6.0_23-b05)
INFO  [ServerInfo] Java VM: Java HotSpot(TM) 64-Bit Server VM 19.0-b09,Sun Microsystems Inc.

Following is a snippet from an edited start-jboss.bat file for reference purposes.

@echo off

setlocal

set JAVA_HOME=C:\Novell\IdentityManager\jre
set PATH=C:\Novell\IdentityManager\jre\bin;C:\Novell\IdentityManager\rbpm\jboss\bin;%PATH%

REM The heap size values here have been optimized for your system.
REM
REM If you specified it, we have also added a setting for your cluster,
REM "workflow engine id".
REM
REM In order to use these settings, you need to uncomment the setting
REM of JAVA_OPTS and edit the script:
REM
REM     C:\Novell\IdentityManager\rbpm\jboss\bin\run.bat
REM

set JAVA_OPTS=-server -Xms512m -Xmx512m -XX:MaxPermSize=256m

start run.bat -Djboss.service.binding.set=ports-01 -c IDMProv -b 0.0.0.0

endlocal