This appendix provides troubleshooting procedures and is organized as follows:
Make sure the Netra j software is installed according to procedures. Refer to the Netra j 3.0 Installation Guide for instructions.
Complete the Network Computer Configuration Checklist (Appendix A, Network Computer Configuration Form).
Make sure the administrative web server daemon is running:
% ps -ef | grep httpd
The output should contain the following line:
root pid 1 0 date 0:03 /usr/lib/httpd -config /etc/opt/netra/SUNWnetra/conf/httpd.conf |
If it is not running, start it by using the following:
% /etc/initid/ahttpd start
Find the path name of the web server document root. This is the root directory of the web server running on port 80 on your system.
After updating a new javaos binary to flash memory, the server automatically reboots the JavaStation and may display the following warning:
Can't open device. Keyboard not present. Using ttya for input and output. |
This warning is displayed when the JavaOS software is first installed or when the end-user elects to update the operating system on reboot.
This warning is from the Open Boot Prom (OBP) and has no impact on how JavaOS functions.
On networks with both a Netra j server and a separate Web proxy server, you must modify NC HotJava Views and HotJava Browser preferences to allow no proxy for the Netra j server. Otherwise, the NC client always contacts the Web proxy for all its services, which could lead to potential connectivity problems.
You can view network activity to help facilitate how to troubleshoot problems with the operating system.
You can also change the console key from PrintScreen to another key by setting a JavaOS property. See JavaStation Client Software Guide for details.
To open the JavaOS console window from the network computer client, wait until the star-field screen is displayed, then press the print screen key.
The JavaOS console window displays the network activity.
The following table describes how to update the flash-prom (programmable read-only memory) with the JavaOS operating system by changing the javaos.alwaysUpdate property.
Table D-1 Updating the Flash-prom with JavaOS
If |
then |
---|---|
If not set |
then the default behavior occurs: if the DHCP-supplied checksum is present and is not zero and does not match the checksum stored in flash, then an Update Flash dialog is displayed. The default value is null. |
If set to true |
then if the above conditions hold, no dialog is displayed and flash is updated. |
If set to any value other than true |
then regardless of checksum presence/value, flash is not updated. Note, that if the DHCP checksum is not present or is zero, the flash is not updated. |
See JavaStation Client Software Guide for additional information.
The following table describes name services error messages.
Table D-2 Name Services Error Messages
Message |
Action |
---|---|
DNS domain name is empty Host name field is empty |
Specify a DNS domain name or host name |
Invalid DNS server IP address Invalid IP address Invalid subnet mask Invalid router IP address |
IP addresses must be in the form x.x.x.x where x is a number between 0 and 255. Type man inet for more information. Hex values are also acceptable. |
Host name already exists IP address already exists Ethernet address already exists |
Each client must have a unique host name, Ethernet address, and IP address. Enter a different value. |
Invalid Ethernet address
|
Ethernet addresses must be in the form xx:xx:xx:xx:xx:xx, where xx is a hexadecimal number separated by colons. |
This section lists some of the known problems with the HotJava Views software.
HotJava Views 1.1 requires a minimum of 32 Mbytes of memory to run on an NC.
There may be intermittent problems when running against a loaded NC HTTP server.
The selector desktop configuration file (selector.desktop) has changed. Applications are now in the selector.apps file. The selector.desktop file now refers only to the name of applications that are defined in selector.apps.
On NC systems, the right mouse button does not currently generate events to applets and applications. For this reason, MailView functionality in pop-up menus activated by the right mouse button are not available. This primarily affects folder management in the tree display in the upper-left corner and in attachments.
Make sure that when the NC clients are installed, there are proper entries in DNS for each client system. If the NC client is not in the DNS maps, the user may not be able to send mail.
Temporary file space in /var/tmp can become full, causing append commands to fail. This can occur when large mail messages are sent, and the user gets an "Unable to send" error notice. More space is required in /var/tmp to resolve this issue.
Use of the HotJava Views Administration facility requires a browser that is compliant with JDK 1.1. Both HotJava Views and HotJava Browser are compliant with JDK 1.1, but other browsers may not yet be fully compliant.
The administration facility is applicable only when configuring HotJava Views installed on the HTTP server that is used to deliver Views applets and configuration files.
Use a web browser to verify all URLs specified in /var/dhcp/dhcptab and in the JavaOS properties text file.
Run snoop(1M) and watch the packets to and from the NC.
Early access versions of Views improperly saved properties into ~/.jdt.
See the README files in /opt/SUNWjdt/doc for each component.
Refer to the following Solaris man pages: dhcp(4), dhcp_network(4), dhcpconfig(1M), dhcptab(4), dhtadm(4), pntadm(4), in.dhcpd(1M), snoop(1M)
To update the "About" button, you must edit the lib/html/welcome/welcomeAbout.html file.
To change the alias associated with the "Feedback" button, you must update the selector.props property for each group configuration.
CalendarView works best with the Common Desktop Environment (CDE) calendar server. The feature of storing mail messages with appointments is available only for calendars in the data version 4 format. This format is supported by the CDE calendar server. The OpenWindowsTM calendar server does not support the data version 4 format.
To find out whether the CDE calendar server is running on a particular machine, as superuser, type:
# /usr/dt/bin/sdtcm_admin -l -h name-of-machine-to-check |
If the sdtcm_admin command returns a list of calendar names, the CDE calendar server is running on that machine. Otherwise, the command returns the following message:
# /usr/dt/bin/sdtcm_admin: Could not list calendars because: Service is unavailable. |
The CDE calendar server is available in the SUNWdtdmn package.
When an appointment is scheduled through MailView, the mail message containing the appointment is saved in the login user's calendar mailbox and a reference to the saved mail message is stored with the appointment. This feature is not available for calendars in the OpenWindows calendar format, data version 3 or less. This is a limitation of the data version 3 (or less) format.
You can use the /usr/dt/bin/sdtcm_convert calendar conversion utility to convert data from version 3 calendars to data version 4 format. Refer to the sdtcm_convert man page for details.
The Additional Permissions list within the Properties dialog may contain login IDs instead of complete names (for example, joes may be displayed instead of Joe Smith). This can occur if the user's calendar is in the OpenWindows data format or if the entry was added using calendar clients other than CalendarView. If the calendar is in the OpenWindows data format, use the /usr/dt/bin/sdtcm_convert utility to convert it to data version 4 format. Refer to the sdtcm_convert man page. Otherwise, use only CalendarView to add editors.
For editable calendars, clicking within an empty time slot creates a new 1-hour appointment in that time slot. There may be a significant delay in refreshing the view. If you did not intend to create a new appointment, delete it by clicking the Delete button in the CalendarView detail area.
To demonstrate automatic update, you need two calendar clients (two CalendarView clients or CalendarView and dtcm).
It may be useful to capture output from the Namesvc proxy to a file. This can be enabled by editing /opt/SUNWjdt/cgi-bin/namesvc. Comment the line:
# $JAVA_HOME/bin/java sunw.jdt.dex.server.Namesvc
# $JAVA_HOME/bin/java sunw.jdt.dex.server.Namesvc | tee /tmp dex.last |
If you perform a search and this file doesn't get created or updated, then the httpd server is having problems launching the cgi-bin script. If the output in the file indicates some type of error:
Content-type: text/plain <DBError>:6
then the database probably couldn't be found or the permissions on the file are not set correctly. Make sure the database files have read access for world.
If you have enabled capturing output to /tmp/dex.last and this file isn't being updated, then check the httpd server error log file. This may indicate that there was some sort of cgi-bin error. The server may not be configured to run cgi scripts or might not be able to find the namesvc script.
Make sure the database files you have created have read access set for world (chmod 664).
The 1.1 back end is not compatible with 1.0 clients. If you need to support both 1.1 and 1.0 clients, you have several choices. The easiest solution is to install the 1.1 back end on a different server than the 1.0 back end. In this configuration you simply follow the steps that have already been outlined above. If you want to support 1.1 and 1.0 clients from the same server, follow these instructions:
Install 1.1 on the server, but do not install it on top of your 1.0 installation. Put 1.1 under /opt/SUNWjdt1.1 or something similar.
In your web server cgi-bin directory create a symbolic link from webserver/cgi-bin/jdt1.1 to /opt/SUNWjdtd1.1/cgi-bin.
Edit the namesvc file in /opt/SUNWjdtd1.1/cgi-bin. Change the JDT_HOME environment variable from /opt/SUNWjdt to /opt/SUNWjdt1.1.
Edit /opt/SUNWjdt1.1/lib/props/standard/nameview.props. Change the value of the dex.db.cgi.proxy property to /cgi-bin/jdt1.1/namesvc.2.0.
Edit /opt/SUNWjdt1.1/lib/props/namesvc.props to point to your database.
This release of HotJava Views has an error message logging capability that is used most extensively by NameView. If you want to enable this capability, use the following procedure on the system running your web server.
Assuming you have installed HotJava Views in /opt/SUNWjdt, create a symbolic link called jdt from within your httpd server's cgi-bin directory (this location varies among servers) to /opt/SUNWjdt/cgi-bin.
For example, if you are running the Apache server, you can use the following commands:
# pwd # /opt/WWW/Apache/httpd/cgi-bin Your httpd server's cgi-bin dir # ln -s /opt/SUNWjdt/cgi-bin ./jdt # ls jdt # getidsvc.2.0 jdtlogsvc namesvc.2.0
Some web servers require that you explicitly turn on cgi-bin support before cgi-bin scripts can be executed. Refer to your httpd server's documentation to determine your server's requirements.
Edit the /etc/syslog.conf file and add the following line:
# local0.info /var/opt/SUNWjdt/jdt.log
Make sure that you use tabs, not spaces, between the values.
Create /var/opt/SUNWjdt/jdt.log and modify its permissions:
# mkdir /var/opt/SUNWjdt # touch /var/opt/SUNWjdt/jdt.log # chmod 666 /var/opt/SUNWjdt/jdt.log
# kill -HUP `cat /etc/syslog.pid
HotJava Views uses CGI to send error messages to the jdtlogsvc script on your web server. The jdtlogsvc script uses syslog to log the errors.
Message or Problem |
Action |
---|---|
JavaOS 1.1 boots OK, but upon login, the heap viewer applet displays instead of Views. |
The alternate main parameters are not getting passed to JavaOS. Make sure you have specified the correct URL in the -i option in /var/dhcp/dhcptab. Use a web browser to verify the URL. Make sure the javaos.mainProgram, javaos.mainZip and javaos.mainHomeprop parameters are correctly specified in the javaosopt.txt file. Use the -i URL indirection. Make sure you have sent a SIGHUP to in.dhcpd if you have changed the /var/dhcp/dhcptab file. |
JavaOS 1.1 boots OK, but upon login, a blue screen displays instead of Views. |
JavaOS has received the alternate main parameters, but they are incorrect. Make sure javaos.mainProgram and javaos.mainZip are specified correctly in the javaosopt.txt file. Verify the URLs are correct by using a web browser. |
class not found/defined error |
This error is common if you are using the JavaServer(TM) server. Servers may fail to handle HTTP requests. If this happens when Views is trying to load a class file, you get a class not found/defined error. Try using the Apache or Netscape server to correct this problem. |
Tables do not parse well in WebView. |
The .jdt/props/selector.props files may contain invalid entries for class names that handle HTML tags. Check your selector.props file for entries that specify classes that start with sun.hotjava. If you find such entries, move your.jdt/props/selector.props file aside (don't forget to reset your proxies). |
After modifying Appointment Reminder properties within the Properties dialog, the appointment reminder types (Post Notice and /or Ring Bell) do not match the property value settings. |
Restart Selector for the new property setting to take effect. |
Several (or many) reminders are posted for a single appointment. |
Chances are your calendar file is in an older format, and/or your workstation has a different time than your calendar server. Update your calendar file and sync your workstation clock with the server's clock. |
No reminders are displayed for appointments inserted through Month view. |
After inserting appointments in Month view, perform an action that reloads your calendar, such as changing the month you're viewing or switching to Day view or Week view. |
Closing the Mail Login dialog in Calendarview can cause HotJava Views to lock up. |
Don't close the Mail Login dialog using the window menu. Use the Login and Cancel buttons to close the dialog. |
HotJava Views complains about not being able to mount my home directory. |
JavaOS mounts your home directory when you log in. It gets the location of your home directory from the passwd and auto.home NIS maps. Make sure these maps are correct and that your home directory is properly exported so the NC can mount it. You can run snoop(1M) and watch for the MOUNT request that happens after you log into JavaOS. |
snoop(1M) doesn't show all the packets from the NC. |
You may be on a switched network. In this case, packets from the NC may not be visible to the system on which you are running snoop. The best way to make sure you see all packets is to plug the NC and your Solaris system into a mini-hub and run snoop etherid for javastation. |
The following table describes HotJava Views error messages and known problems.
GO-Joe provides diagnostic tools and outputs to help diagnose problems that may arise due to misconfiguration and other difficulties. Check these if you encounter any problems.
On devices that provide it, the JavaOS console output (see "Troubleshooting") can be highly informative if the applet terminates prematurely. When viewing this output, look for all exceptions that may be listed. Exceptions may occur that cause further exceptions as the program continues to execute, and it is usually the original exception that indicates the true cause of the problem. In addition, the GO-Joe applet prints messages to the status bar, but not all Java environments show this status (or they may overwrite it with their own status messages). These messages are also sent to the Java console, so they may be visible in the console log when they are not visible on the status line.
The GlobalHost loadable ddx module redirects the standard error output for the session to a file called /tmp/Xerr:n, where n represents the display number of the session. This file contains diagnostic messages from the GlobalInit program, from the ddx loadable module itself, and from the X clients that run throughout the session.
The GO-Joe product has been designed to be easy to configure and use, yet is somewhat complex in operation. Some of the more common problems encountered are described here.
If the GO-Joe applet fails to load entirely, check the HTML file you are loading and verify that the APPLET tag is correctly formed. Check the codebase path and the path and file name to the applet file itself. Finally, investigate the log files for your HTTP server (usually called access_log and error_log) to see if the applet is being successfully transmitted to the Java environment. It may help to exit your browser or Java environment and restart it to clear any cached files that may be interfering with the applet's execution.
All Java environments implement a security manager that determines what operations may be dangerous for an applet to perform and can enable or restrict these actions as it sees fit. The biggest restriction that most Security Managers implement with respect to GO-Joe is that an applet is allowed to connect only to the host that served that applet. If you have such a Security Manager, your GO-Joe applet is only able to connect to the go-login program running on the server that the applet was loaded from. In addition, the diagfile functionality of GO-Joe is similarly restricted.
The JavaStation produces a message as follows:
Sunw.hotjava.applet.AppletSecurityException: checkconnect.networknone at sunw.hotjava.security.CommonSecurity.checkconnect() at java.net.InetAddress.getAllByName)()
In some cases, if JavaOS fails, it may broadcast an SNMP trap. The trap can be received by any SNMP manager listening on the (sub)net. There is a simple SNMP trap receiver supplied with JavaOS state information in a log file.
Run the following command on any machine in the (sub)net:
# /opt/SUNWjsos/bin/snmptrapd -x /opt/SUNWjsos/bin/logdumper&
If failures do occur, they are saved in the /tmp directory of the server machine with the following unique file name:
/tmp/javaos.log.<IP address of failed client>@<time in seconds since January 1, 1970>
You can browse the log file to determine errors that may have caused a failure. You may also want to add the snmptrapd command to the Solaris initialization and booting hierarchy. See the README files in /etc/init.d and /etc/rc2.d for details.
Not all JavaStation client failures result in a log file creation on the server machine.
The following table describes additional error messages and known problems.
Table D-4 Miscellaneous Error Messages and Suggested Actions
Message |
Action |
---|---|
Cannot read /etc/hosts
File not found: /opt/SUNWjshm/bin/jdhostcfg
Cannot read /opt/SUNWjshm/lib/Help.txt
Cannot write /tmp/.jdcfg
|
Check to ensure the Solaris operating environment and the SUNWjshm package are installed correctly. Also check file system permissions.
|