Troubleshooting the Java Web Console Software
The following information is provided to help you troubleshoot any problems that you
might encounter when using the Java Web Console software.
Checking Console Status and Properties
You can use the smcwebserver, wcadmin, and svcs commands to get different types
of information about the console, which might be useful for troubleshooting problems.
How to Check if the Console is Running and Enabled
- Become superuser or assume an equivalent role.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- Check the server status.
# smcwebserver status
Sun Java(TM) Web Console is running
- Solaris 10 11/06: Check the console's SMF status and enabled state.
# svcs -l system/webconsole:console
fmri svc:/system/webconsole:console
name java web console
enabled true
state online
next_state none
state_time Wed 17 May 2006 01:22:32 PM EDT
logfile /var/svc/log/system-webconsole:console.log
restarter svc:/system/svc/restarter:default
contract_id 129
dependency require_all/none svc:/milestone/multi-user (online)
If you start and stop the server with smcwebserver commands without enabling and
disabling, the enabled property might display as false (temporary) or true (temporary).
How to List Console Resources and Properties
- Become superuser or assume an equivalent role.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- List the console's resources and properties.
If you are running at least the Solaris 10 11/06 release, use this command:
# wcadmin list
Deployed web applications (application name, context name, status):
console ROOT [running]
console com_sun_web_ui [running]
console console [running]
console manager [running]
legacy myapp [running]
Registered jar files (application name, identifier, path):
console audit_jar /usr/lib/audit/Audit.jar
console console_jars /usr/share/webconsole/lib/*.jar
console jato_jar /usr/share/lib/jato/jato.jar
console javahelp_jar /usr/jdk/packages/javax.help-2.0/lib/*.jar
console shared_jars /usr/share/webconsole/private/container/shared/lib/*.jar
Registered login modules (application name, service name, identifier):
console ConsoleLogin userlogin
console ConsoleLogin rolelogin
Shared service properties (name, value):
ENABLE yes
java.home /usr/jdk/jdk1.5.0_06
Note - This ENABLE property is ignored because SMF uses its own enabled property, which
is shown in the previous procedure. The ENABLE property is used on
older Solaris systems where the console server is not managed by SMF.
For the Solaris 10, Solaris 10 1/06, and Solaris 10 6/06 releases, use
this command:
# smreg list
The list of registered plugin applications:
com.sun.web.console_2.2.4 /usr/share/webconsole/console
com.sun.web.ui_2.2.4 /usr/share/webconsole/com_sun_web_ui
com.sun.web.admin.example_2.2.4 /usr/share/webconsole/example
The list of registered jar files:
com_sun_management_services_api.jar scoped to ALL
com_sun_management_services_impl.jar scoped to ALL
com_sun_management_console_impl.jar scoped to ALL
com_sun_management_cc.jar scoped to ALL
com_sun_management_webcommon.jar scoped to ALL
com_iplanet_jato_jato.jar scoped to ALL
com_sun_management_solaris_impl.jar scoped to ALL
com_sun_management_solaris_implx.jar scoped to ALL
The list of registered login modules for service ConsoleLogin:
com.sun.management.services.authentication.PamLoginModule optional
use_first_pass="true" commandPath="/usr/lib/webconsole";
com.sun.management.services.authentication.RbacRoleLoginModule requisite
force_role_check="true" commandPath="/usr/lib/webconsole";
The list of registered server configuration properties:
session.timeout.value=15
authentication.login.cliservice=ConsoleLogin
logging.default.handler=com.sun.management.services.logging.ConsoleSyslogHandler
logging.default.level=info
logging.default.resource=com.sun.management.services.logging.resources.Resources
logging.default.filter=none
logging.debug.level=off
audit.default.type=None
audit.None.class=com.sun.management.services.audit.LogAuditSession
audit.Log.class=com.sun.management.services.audit.LogAuditSession audit.class.fail=none
authorization.default.type=SolarisRbac
authorization.SolarisRbac.class=
com.sun.management.services.authorization.SolarisRbacAuthorizationService
authorization.PrincipalType.class=
com.sun.management.services.authorization.PrincipalTypeAuthorizationService
debug.trace.level=0
.
.
.
No environment properties have been registered.
Problems Accessing the Console
Problems with console access might indicate that the console server is not enabled,
or security settings are restrictive. See Checking Console Status and Properties and Java Web Console Security Considerations for more information.
Problems with Application Registration
This section contains information about solving possible registration problems with console applications. For
information about a particular console application, you should refer to the application's documentation.
Note - Console applications typically are registered as part of their installation process, so you
should not normally need to register an application yourself.
Starting with the Solaris 10 11/06 release, the web console has changed the
approach to application registration but can still support applications that were developed for
earlier versions of the console. Current applications are registered and deployed with a
single command while the console server is running. Applications that were developed for the
earlier console are known as legacy applications, and require the console server to
be stopped during registration. If you need to register or unregister an application,
you must first determine if the application is a legacy application, as described
in the following procedure.
How to Determine if an Application is a Legacy Application
- View the application's app.xml file.
The app.xml file is located in the application's WEB-INF directory.
- Examine the registrationInfo tag in the app.xml file.
For a legacy application, the registrationInfo tag is a version 2.x .
For example, registrationInfo version="2.2.4".
For a current application, the version in the registrationInfo tag is at least
3.0. For example, registrationInfo version="3.0".
How to List Deployed Applications
- Become superuser or assume an equivalent role.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- List the deployed applications.
If you are running at least the Solaris 10 11/06 release, use this
command:
# wcadmin list -a
Deployed web applications (application name, context name, status):
console ROOT [running]
console com_sun_web_ui [running]
console console [running]
console manager [running]
legacy myapp [running]
The command lists all the registered and deployed applications. Legacy applications are listed
with the application name legacy. See How to Determine if an Application is a Legacy Application. All other listed applications are current
applications, and would be registered as described in How to Register a Current Application With the Java Web Console.
Typically, the status that is shown for the applications contains either running
or stopped. If the status is running, the application is currently
loaded and available. If the status is stopped, then the application is not
currently loaded and is unavailable. Sometimes an application registers and deploys successfully, but
does not load because of a problem in the application. If so,
the application's status is stopped. Check the console_debug_log to determine if there is
an error with a traceback from the console's underlying web container, Tomcat, when
attempting to load the application. For more information about the console_debug_log, see Using the Console Debug Trace Log.
If all the applications show stopped (including the console application), this usually means
the console's web container is not running. The list of applications in this
case is obtained from the static context.xml files registered with the web
container.
For the Solaris 10, Solaris 10 1/06, and Solaris 10 6/06 releases, use
this command:
# smreg list -a
The list of registered plugin applications:
com.sun.web.console_2.2.4 /usr/share/webconsole/console
com.sun.web.ui_2.2.4 /usr/share/webconsole/com_sun_web_ui
com.sun.web.admin.yourapp_2.2.4 /usr/share/webconsole/yourapp
How to Register a Legacy Application With the Java Web Console
Note - This procedure applies to all console applications in the Solaris 10, Solaris 10
1/06, and Solaris 10 6/06 releases. Starting with Solaris 10 11/06 release, this
procedure also applies only to those applications that are identified as legacy applications.
See How to Register a Current Application With the Java Web Console for the registration procedure for current applications. See also How to Determine if an Application is a Legacy Application.
- Become superuser or assume an equivalent role.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- Stop the web server.
# smcwebserver stop
- Register the application.
# smreg add -a /directory/containing/application-files
The smreg command manages the information in the Java Web Console's registration table.
This script also performs some additional work to deploy the application. For additional
options to this command, see the smreg(1M) man page.
- Restart the web server.
# smcwebserver start
Example 3-8 Registering a Legacy Application
This example shows how to register a legacy application whose files are located
in the /usr/share/webconsole/example directory. Notice that for legacy applications, the console server must
be stopped before the application is registered, and started after the application is
registered. A warning given by smreg can be ignored because this application is a
legacy console application.
# smcwebserver stop
# smreg add -a /usr/share/webconsole/example
Warning: smreg is obsolete and is preserved only for
compatibility with legacy console applications. Use wcadmin instead.
Type "man wcadmin" or "wcadmin --help" for more information.
Registering com.sun.web.admin.example_version.
# smcwebserver start
How to Unregister a Legacy Application From the Java Web Console
Note - This procedure applies to all console applications in the Solaris 10, Solaris 10
1/06, and Solaris 10 6/06 releases. Starting with Solaris 10 11/06 release, this
procedure applies only to those applications that are identified as legacy applications. See
How to Unregister a Current Application from the Java Web Console for the procedure that describes how to unregister current applications.
If you do not want a particular legacy application to display in the
web console's launch page, but you do not want to uninstall the software,
you can use the smreg command to unregister the application. See How to Determine if an Application is a Legacy Application.
- Become superuser or assume an equivalent role.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- Unregister an application.
# smreg remove -a app-name
Example 3-9 Unregistering a Legacy Application From the Java Web Console
This example shows how to unregister a legacy application with the
app-name com.sun.web.admin.example.
# smreg remove -a com.sun.web.admin.example
Unregistering com.sun.web.admin.example_version.
How to Register a Current Application With the Java Web Console
Solaris 10 11/06: This procedure is for updated console applications that can be registered and
deployed without stopping and starting the console server. See How to Register a Legacy Application With the Java Web Console for the registration procedure
for legacy applications and all console applications that are in the Solaris 10,
Solaris 10 1/06, Solaris 10 6/06 releases. See also How to Determine if an Application is a Legacy Application.
- Become superuser or assume an equivalent role.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- Register and deploy the application.
wcadmin deploy -a app-name -x app-context-name /full path/to/app-name
Example 3-10 Registering Current Applications
This example shows how to register and deploy an application that has been
developed or updated for the current web console.
# wcadmin deploy -a newexample_1.0 -x newexample /apps/webconsole/newexample
How to Unregister a Current Application from the Java Web Console
Solaris 10 11/06: This procedure is for updated console applications, which can be unregistered and
undeployed without stopping and starting the console server. See How to Unregister a Legacy Application From the Java Web Console for the unregistration procedure
for legacy applications and all console applications that are in the Solaris 10,
Solaris 10 1/06, Solaris 10 6/06 releases. See How to List Deployed Applications and How to Determine if an Application is a Legacy Application to determine
if an application is a legacy or updated application.
- Become superuser or assume an equivalent role.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- Undeploy and unregister the application.
# wcadmin undeploy -a newexample_1.0 -x newexample