IBM Streams 4.2

Problem launching graphical user interface (GUI) applications

The Domain Manager, Streams Console, Streams Studio, Commodity Purchasing sample application, or any other IBM® Streams application that requires an X Window System cannot be launched.

Symptoms

When you attempt to start an IBM Streams graphical user interface (GUI), the application does not start. There are no error messages to indicate the reason for the problem.

Causes

  • The user who is attempting to run the application is not authorized to use the X Window session.
    This problem typically occurs in the following situations:
    • A user logs in to the system as user root, switches to a non-root user, and then attempts to run a GUI application.
    • A user logs in to the system as user root, installs IBM Streams by using the GUI installation method, and then attempts to start the Domain Manager from the Postinstallation Tasks panel. The installation program attempts to start the Domain Manager on behalf of the installation owner who is a non-root user.
    In these situations, the non-root user cannot start the GUI application because the X Window session was started as user root when the user initially logged on to the system as root.

  • The user who is attempting to run the application used the Linux ssh command to open a terminal on a remote machine but did not specify the -X option to enable X11 forwarding.

Diagnosing the problem

Use the following methods to determine if the user is authorized to use the X Window session:
  1. Enter xclock from a command prompt. Messages similar to the following example are displayed:
    [streamsadmin@host1 ~]$ xclock
    Xlib: connection to ":0.0" refused by server
    Xlib: No protocol specified

  2. Enter firefox from a command prompt. Messages similar to the following example are displayed:
    [streamsadmin@host1 ~]$ firefox
    Xlib: connection to ":0.0" refused by server
    Xlib: No protocol specified
    
    Xlib: connection to ":0.0" refused by server
    Xlib: No protocol specified
    
    Error: cannot open display: :0.0

  3. If you are launching the Domain Manager from the command line, messages similar to the following example are displayed.
    [streamsadmin@host1 4.2.0.0]$ streamtool launch --domainmgr
    The IBM Streams Domain
    Manager application is starting.
    [streamsadmin@host1 4.2.0.0]$ X11 connection rejected because of wrong authentication.
    X11 connection rejected because of wrong authentication.
    X11 connection rejected because of wrong authentication.

  4. If you are launching the Domain Manager from the installation GUI, messages similar to the following example are displayed.
    Command line:
    [root@host1 streamsadmin]# ./IBMStreamsSetup.bin
    Preparing to install...
    Extracting the JRE from the installer archive...
    Unpacking the JRE...
    Extracting the installation resources from the installer archive...
    Configuring the installer for this system's environment...
    
    Launching installer...
    
    X11 connection rejected because of wrong authentication.
    X11 connection rejected because of wrong authentication.
    X11 connection rejected because of wrong authentication.

    Messages similar to the following example might be in the installation summary log in the product-installation-root-directory/4.2.0.0/logs directory:

    Show Domain Manager:                           
                Status: WARNING                           
                Additional Notes: WARNING -
    localhost:10.0 
    /opt/ibm/InfoSphere_Streams/4.2.0.0
    streamsadmin 
    /home/streamsadmin 
    !SESSION 2015-02-05 16:24:29.028 ----------------------------------------------- 
    eclipse.buildId=unknown 
    java.fullversion=JRE 1.7.0 IBM J9 2.7 Linux amd64-64 Compressed References 20141017_217728 (JIT enabled, AOT enabled) 
    J9VM - R27_Java727_SR2_20141017_1632_B217728 
    JIT  - tr.r13.java_20141003_74587.01 
    GC   - R27_Java727_SR2_20141017_1632_B217728_CMPRSS 
    J9CL - 20141017_217728 
    BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US 
    Framework arguments:  -clearPersistedState --initdir /opt/ibm/InfoSphere_Streams/4.2.0.0/system/impl/bin/streamsSetup 
    Command-line arguments:  -os linux -ws gtk -arch x86_64 -clearPersistedState -consolelog --initdir /opt/ibm/InfoSphere_Streams/4.2.0.0/system/impl/bin/streamsSetup  
    
    !ENTRY org.eclipse.osgi 4 0 2015-02-05 16:24:33.443 
    !MESSAGE Application error 
    !STACK 1 
    org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed]     
      at org.eclipse.swt.SWT.error(SWT.java:4423
      at org.eclipse.swt.widgets.Display.createDisplay(Display.java:925)
      ⋮
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:95)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)
      at java.lang.reflect.Method.invoke(Method.java:620)
      at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
      at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
      ⋮
    StreamsSetup: 
    An error has occurred. See the log file 
    /opt/ibm/InfoSphere_Streams/4.2.0.0/system/impl/bin/streamsSetup/configuration/1423171469779.log.
       WARNING - CDISI3040W The IBM Streams
    Domain Manager cannot be opened.
      WARNING - Cause for CDISI3040W: A possible cause is that the installation owner is not authorized to use the X Window session. 
      This problem can occur if the X Window session was started as user root when the user initially logged on to the system as root. 
      IBM
    Streams attempts to start the Domain Manager on behalf of the installation owner who is a non-root user.

Resolving the problem

  • If the user is not authorized to use the X Window session:
    1. Log out of the system.
    2. Log on to the system as a non-root user.
    3. Run the GUI application.

  • If the user opened a terminal on a remote machine by using the Linux ssh command:
    1. Open a terminal by using the ssh -X command to enable X11 forwarding.
    2. Run the GUI application.