VMSA fails to start and reports "java.lang.NullPointerException" error

Article:TECH21390  |  Created: 2004-01-08  |  Updated: 2004-01-08  |  Article URL http://www.symantec.com/docs/TECH21390
Article Type
Technical Solution

Environment

Issue



VMSA fails to start and reports "java.lang.NullPointerException" error

Error



java.lang.NullPointerException

Solution



The following error was reported when staring the Volume Manager Storage Administrator (VMSA) graphical user interface:

# /opt/VRTSvmsa/bin/vmsa
java.lang.NullPointerException
at sun.awt.motif.X11FontMetrics.<init>(Compiled Code)
at sun.awt.motif.X11FontMetrics.getFontMetrics(Compiled Code)
at sun.awt.motif.MToolkit.getFontMetrics(Compiled Code)
at java.awt.Component.getFontMetrics(Compiled Code)
at vrts.util.GraphicsUtil.getStringSize(Compiled Code)
at vrts.gui.widgets.VButton.recalc(Compiled Code)
at vrts.gui.widgets.VButton.setLabel(Compiled Code)
at vrts.gui.widgets.VButton.<init>(Compiled Code)
at vrts.gui.widgets.VActionPanel.buildVActionPanel(Compiled Code)
at vrts.gui.widgets.VActionPanel.<init>(Compiled Code)
at vrts.gui.dialogs.VTextMessageDialog.<init>(Compiled Code)
at vrts.gui.dialogs.VScrollableErrorDialog.<init>(Compiled Code)
at vrts.gui.util.VGuiUtil.showException(Compiled Code)
at vrts.gui.util.VGuiUtil.displayException(Compiled Code)
at Vmsa.main(Compiled Code)


Some locales can cause this problem, such as en_US.ISO8859-15:

# env | grep LC_
LC_COLLATE=en_US.ISO8859-15
LC_CTYPE=en_US.ISO8859-15
LC_MESSAGES=C
LC_MONETARY=en_US.ISO8859-15
LC_NUMERIC=en_US.ISO8859-15
LC_TIME=en_US.ISO8859-15


As a workaround, try changing to a different locale, such as "en_US.ISO8859-1":

# LC_COLLATE=en_US.ISO8859-1; export LC_COLLATE
# LC_CTYPE=en_US.ISO8859-1; export LC_CTYPE
...
# LC_TIME=en_US.ISO8859-1; export LC_CTIME


To change the default system locale settings, modify the /etc/default/init file:

# cat /etc/default/init
# @(#)init.dfl 1.5 99/05/26
#
# This file is /etc/default/init.  /etc/TIMEZONE is a symlink to this file.
# This file looks like a shell script, but it is not.  To maintain
# compatibility with old versions of /etc/TIMEZONE, some shell constructs
# (i.e., export commands) are allowed in this file, but are ignored.
#
# Lines of this file should be of the form VAR=value, where VAR is one of
# TZ, LANG, CMASK, or any of the LC_* environment variables.
#
TZ=US/Pacific
CMASK=022
LC_COLLATE=en_US.ISO8859-1
LC_CTYPE=en_US.ISO8859-1
LC_MESSAGES=C
LC_MONETARY=en_US.ISO8859-1
LC_NUMERIC=en_US.ISO8859-1
LC_TIME=en_US.ISO8859-1
LANG=en_US.ISO8859-1






Legacy ID



249498


Article URL http://www.symantec.com/docs/TECH21390


Terms of use for this information are found in Legal Notices