After upgrading Applications Manager to version 9.4.1, the Help > Applications Manager Online Manuals function does not open online help manuals in a browser. Instead, there is an error displayed:
java.lang.NullPointerException
at com.appworx.client.screen.admin.A.A(HelpIDs.java:207)
at com.appworx.client.screen.main.AxMain$11.actionPerformed(AxMain.java:997)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:369)
at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1020)
at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1064)
at java.desktop/java.awt.Component.processMouseEvent(Component.java:6632)
at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
at java.desktop/java.awt.Component.processEvent(Component.java:6397)
at java.desktop/java.awt.Container.processEvent(Container.java:2263)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5008)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Release : 9.4.1
Component : Applications Manager
Options.properties is missing Online manual parameter
Solution:
Workaround:
Compare Options.properties with below default Options.properties and add/edit any missing parameters, mainly the "HelpURL" parameter (note some parameters may differ such as ports and host/IP values.
Example Options.properties from 9.4.1:
#$Project$
#$Revision: 29509 $
#$Date: 2021-09-26 22:23:20 -0700 (Sun, 26 Sep 2021) $
#$Author: am644017 $
#$NoKeywords$
#
# Sample AppWorx for Java configuration file
# Lines starting with the hash character "#" are comments.
##
# Set the RMI Server IP or host name
#
RMIHostID=test.test.com#
# Set the RMI Registry Port number to use. Default is 1099
#
RMIRegistryPortNumber=1099#
# Set RMI Server port to use, default = 0
#
#RMIDataPortNumber=#
# Set the RMI Client Port number to use, default = 0.
#
#ClientRMIPortNumber=#
# name the RMI server is registered with in RMIRegistry
#
#RMIServerName=AxRmiServer#
# name the API server is registered with in RMIRegistry
#
#APIServerName=AxAPIServer#
# Set SSL on or off, default = on
#
SSL=On#
# LDAP Authentication property variables
#
# whether to use ssl for LDAP connection if true
# keystore with ldap cert must be specified
#LdapUseSSL=true
#
# vendor InitialContext impl default is suns
#LdapInitialContextClass=com.sun.jndi.ldap.LdapCtxFactory
# LDAP URL
#LdapUrl=ldap://ldap.appworx.com:13818
#
# top level directory search for users
#LdapInitialDirectory=dc=appworx,dc=com
#
# Authentication mechanism used for LDAP
#LdapAuthenticationMechanism=simple
#
# Keystore location for ldap certificate. Must be specified
# if LdapUseSSL true
#LdapSSLKeystore=
#
# Password to the keystore
#LdapKeystorePassword=
##
# JDBC driver name
#
DriverName=jdbc:oracle:thin
#
# JDBC Driver to use
#
DriverClassName=oracle.jdbc.driver.OracleDriver#
# RMI Server loging mode, default = file
#
ServerLogMode=file
#ServerLogMode=console # development only#
# Web page settings
#
NextURL=../Main.html
LogonPage=../Main.html
MainPage=../Main.html
ExitPage=../Intro.html#
# splash image
#
#SplashImage=splash.png#
# Debug mode
#
Debug=false#
# Date formats
#
# j: Java / db: Database
# Macro: larger time segments / Micro: small time segments
# Ex: Java 'MM-dd-yyyy' == Oracle 'mm-dd-yyyy'
jDateFormatMacro=MM-dd-yyyy
jDateFormatMicro=HH:mm:ss z
dbDateFormatMacro=mm-dd-yyyy
dbDateFormatMicro=hh24:mi:ss#
# The complete URL for the AppWorx.jar file on the web server.
# Used by the RMI Server
#
#ServerCodebase=NULL#
# Base directory for the master
#
#SQLOPER_HOME=NULL#
# network socket timeout for file viewer, in seconds
# default is 60
#
SocketTimeout=60#
# size of file viewer buffer in Kbytes
#
FileViewerSize=32#
#
# Set's the timeout on the RMI Socket.
# Default is 300 seconds.
#
# RMISocketTimeout=NULL#
# Set the Database Port Number
# By default is the standard SQL listner port [1521]
#
#JdbcPortNumber=NULL
#
# common file for storing File viewer file associations in.
# should be on a shared drive (mounted filesystem for UNIX clients).
# default is a local file in the users home directory: fileassoc.properties
#
#FileAssociations=#
# Set the URL for online documentation with {VERSION} and {HID} as
# variables set by application internally.
#
HelpURL=https://techdocs.broadcom.com/bin/gethidpage?ux-context-string=\{HID\}&appid=applicationsmanager
\{VERSION\}&language=&format=rendered
#RMIServerHostname=