IBM Support

A Linux Java client crashes on startup with URE & NPE in Rational Synergy

Troubleshooting


Problem

Attempts to start a Java/Developer client on Linux crashes with error "Unhandled runtime exception: java.lang.NullPointerException" (URE) (NPE) in IBM Rational Synergy.

Symptom

You will see the following:

The startup will fail with the following dialog:


    Unhandled Runtime Exception
    An internal error has occurred. Proceeding may cause further errors.
    [Submit Support Request] [Exit Synergy]

The ccm_client.log will have the following:

    An unhandled runtime exception has occurred.  See synergy.log for more information.

The synergy.log error will be in a format similar to the following:

    2012-09-19T13:38:36.710-0500 WARNING: --- BEGIN UNHANDLED EXCEPTION ERROR REPORT ---
    An internal error has occurred at Wed Sep 19 13:38:36 CDT 2012
    Unhandled runtime exception: java.lang.NullPointerException
    Exception Message: null

    Stack trace:
    <Stack trace Details>

    Versions of implicated classes:
    <Details of JAVA Classes affected>

    Release <JAVA Release information>

    Build numbers:
    <Build Information>

    --- END UNHANDLED EXCEPTION ERROR REPORT --- {ccm_client.CcmClientExceptionHandler}


The Stack trace section will give more insight into the problem and will help determine a resolution:

Case 1: StringTokenizer.java / CcmMenuBar.java

    An internal error has occurred at Wed Sep 19 13:38:36 CDT 2012
    Unhandled runtime exception: java.lang.NullPointerException
    Exception Message: null

    Stack trace:
    java.lang.NullPointerException
       at java.util.StringTokenizer.<init>(
    StringTokenizer.java:83)
       at java.util.StringTokenizer.<init>(StringTokenizer.java:61)
       at com.telelogic.cm.ccm_client.CcmMenuBar.createMenus(
    CcmMenuBar.java:76)
       at com.telelogic.cm.ccm_client.CcmMenuBar.<init>(CcmMenuBar.java:67)
       at com.telelogic.cm.ccm_client.panes.DeveloperWorkbench$1.run(DeveloperWorkbench.java:221)
       at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:210)
       at java.awt.EventQueue.dispatchEvent(EventQueue.java:608)
       at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:284)
       at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194)
       at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:184)
       at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:179)
       at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:171)
       at java.awt.EventDispatchThread.run(EventDispatchThread.java:132)


Case 2: Arrays.java / CcmPluginManager.java


    An internal error has occurred at Tue Oct 29 19:14:26 IST 2013
    Unhandled runtime exception: java.lang.NullPointerException
    Exception Message: null

    Stack trace:
    java.lang.NullPointerException
    at java.util.Arrays$ArrayList.<init>(
    Arrays.java:47)
    at java.util.Arrays.asList(Arrays.java:169)
    at com.telelogic.cm.ccm_client.util.CcmPluginManager.initializePlugins(
    CcmPluginManager.java:216)
    at com.telelogic.cm.ccm_client.CcmClient.startupClient(CcmClient.java:918)
    at com.telelogic.cm.ccm_client.panes.LoginPane$2.doInBackground(LoginPane.java:744)
    at com.telelogic.cm.ccm_client.util.threadpool.TempCcmSwingWorker$2.call(TempCcmSwingWorker.java:342)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
    at java.util.concurrent.FutureTask.run(FutureTask.java:149)
    at java.lang.Thread.run(Thread.java:738)

Cause

There may be a different cause for each of these cases.

  • Case 1: StringTokenizer.java / CcmMenuBar.java
    The cause for this error is not confirmed but it is believed to be related to zombie jetty processes.

  • Case 2: Case 2: Arrays.java / CcmPluginManager.java
    This can be caused by an incorrect client installation and configuration.

    1. Run ccm_install -v and ccm_install -l and see if any errors are reported.

    2. Check for the directory $CCM_HOME/etc/plugins and the permissions on the directory and contents.

Environment

These errors have been seen where you have a RedHat Linux server and client(s)

A Windows client does not show the errors.

Diagnosing The Problem

You need to review the synergy.log for the errors mentioned in the Symptoms above. In particular the key information on the Stack Trace.

Note: Your stack trace may refer to different .java files so the cause and resolutions may be different. Please contact IBM Support for assistance.

Resolving The Problem

To resolve the problems see the steps below for each of the cases:


  • Case 1: StringTokenizer.java / CcmMenuBar.java
    1. Stop all instances of jetty on the server for Rational Synergy and Rational Change.

    2. Examine the remaining processes for any existing zombie jetty processes and kill them.

    3. Restart the Rational Synergy and the Rational Change servers.



  • Case 2: Case 2: Arrays.java / CcmPluginManager.java
    This can be caused by an incorrect client installation and configuration. Running ccm_install will indicate if there are any install errors.

    1. Confirm the ccm_root user and group are defined on the client with the same User Identifier(UID) and Group Identifier(GID) as on the server.

    2. Confirm the informix user and group are defined on the client with the same UID and GID as the server.

    3. Run ccm_install to correct any problems.

[{"Product":{"code":"SSC6Q5","label":"Rational Synergy"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"General Information","Platform":[{"code":"PF016","label":"Linux"}],"Version":"7.1.0.4","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
22 December 2020

UID

swg21611797