Lmadm tool known issues and solutions



This article explains the known issues of lmadm tool that might be encountered when registering the VisiBroker license. It will also discuss about the root cause and the solutions of these issues.

Lmadm Known Issues

Issue 1:

When starting lmadm, the following exception might be encountered in AIX machines:

Exception in thread "main" java.lang.UnsatisfiedLinkError: net (A file or directory in the path name does not exist.)

       at java.lang.ClassLoader.loadLibraryWithPath(ClassLoader.java:1018)

       at java.lang.ClassLoader.loadLibraryWithClassLoader(ClassLoader.java:982)




This is a known issue with AIX and IBM JDK. Please ensure '$JAVA_HOME/jre/lib/ppc' for 32-bit VisiBroker/JDK or '$JAVA_HOME/jre/lib/ppc64' for for 64-bit VisiBroker/JDK is set in the LIBPATH environment variable before running lmadm tool.


Issue 2:

When running lmadm, the following error might be encountered in AIX machines:

lmadm: Unable to find a suitable Java VM in /usr/java6


Root cause:

A symbolic link name "libjvm.a" pointing to libjvm.so(required for the JRE to be loaded) missing from IBM Java6 JRE since GA is the root cause of this issue.

The details of the IBM JDK bug can be found in:


And, the latest version of JDK 6.0 build is Service Refresh 15(as of this writing) but there is no fix for this issue yet.




The following workaround can be used to mitigate this issue:

A. Create a symbolic link name "libjvm.a" in $JAVA_HOME/jre/bin/classic directory pointing to $JAVA_HOME/jre/bin/classic/libjvm.so.

B. Ensure '$JAVA_HOME/jre/lib/ppc' for 32-bit VisiBroker/JDK or '$JAVA_HOME/jre/lib/ppc64' for for 64-bit VisiBroker/JDK is added to the LIBPATH environment variable.


Issue 3:

The following error is encountered when running as root user:

./lmadm -i console

Error: file '/opt/inprise/visibroker/bin/lmadm.config' cannot have group or other write access. Error: Unable to open configuration file '/opt/inprise/visibroker/bin/lmadm.config'.

When a non-root user is running lmadm, the following exception is thrown:

$ ./lmadm -i console

java.lang.NullPointerException java.lang.NullPointerException

       at com.borland.sanctuary.lm.mgr.SlipManager.byte(Unknown Source)

       at com.borland.sanctuary.lm.mgr.SlipManager.init(Unknown Source)

       at com.borland.sanctuary.lm.mgr.SlipManager.init(Unknown Source)


In this case, the non-root user is not the user who installed the VisiBroker installation.


Root cause:

The root cause of both these issues is, the lmadm tool requires the following folders/files to have the appropriate access rights





These two folders should have read and write access for any user who wants to use this VisiBroker installation.


Issue 4:

When running lmadm, the following error might be encountered:

Unable to find a supported JDK or JRE version. Version 1.4.2 or higher is required. Check your installation and use -javahome to specify the JDK or JRE location.


Root cause:

The error is caused when a 64-bit JDK is used to register a 32-bit VisiBroker installation and vice versa.



The lmadm tool needs a 32-bit JDK to be in the PATH for registering a 32-bit VisiBroker installation and a 64-bit JDK for a 64-bit VisiBroker installation.


Issue 5:

When running lmadm, the following error might be encountered in HP-UX machines and with only 32-bit VisiBroker installations:

./lmadm -i console

Error loading Java VM library: libjvm.so [No such file or directory]


Root cause:

The 32-bit lmadm tool wrongly loading the 64-bit JVM library (IA64W/server/libjvm.so) is the root cause of this issue. The lmadm tool should be loading the 32-bits JVM library (IA64N/server/libjvm.so) instead. The 64-bits installation does not have this issue because the 64-bits JVM library can be loaded by a 64-bit launcher executable.

It affects the following launchers in VisiBroker:

- lmadm

- vbconsole

- JdsExplorer

A RPI: 1081826 has been raised for this issue which might be addressed in VisiBroker future releases.



A workaround for this issue is to call java directly to load the lmadm java application instead of using the launcher to load lmadm.

For example, based on the "lmadm -debug" output we can identify the parameters to set:

 java -cp $VBROKERDIR/lib/lm.jar:$VBROKERDIR/lib/sanct6.jar:$VBROKERDIR/lib/mail.jar -Dborland.enterprise.licenseDefaultDir=$VBROKERDIR/license -Dborland.enterprise.licenseDir=$VBROKERDIR/var -Djava.io.tmpdir=$VBROKERDIR/tmp -Djava.io.tmpdir.autoclean=true -Dapplication.home=$VBROKERDIR -Dvbroker.orb.admDir=$VBROKERDIR/adm com.borland.enterprise.license.LMAdm  

In HPUX Itanium 64-bit platform, another possible workaround is to use the 64-bit launcher instead.



How To-Best Practice
Comment List
Related Discussions