Search code examples
ubuntusap-guisap-basis

SAP Logon Error - Detail NiRClientHandle: route expected


The Error:

Connection closed
Error: internal error
Location: SAProuter 40.4 on 'uccsaprouter'
Tue Jan 30 20:35:02 2018
Release 720
Component NI (network interface), version 40
rc = -93, module nirout.cpp, line 2754
Detail NiRClientHandle: route expected

The Story:

I have installed the Java Version of SAPGUI 7.4 on Ubuntu. However, when I changed to cd ~/.SAPGUI I did not find any configuration file which suppose to be set up by the administrator (who I do not have as it is for the class!). Our lecturer provided us with these information:

[Router]
hcctum=/H/saprouter.hcc.in.tum.de/S/3299/H/
hccmdA=/H/141.44.38.2/S/3299/H/
hccmdM=/H/141.44.39.3/S/3299/H/
hcctumremote=/H/saprouter.hcc.in.tum.de/S/3297/H/
hcctumfailover=/H/hcchasap.informatik.tu-muenchen.de/S/3299/H/

[Default]
name=hcctum

which I put in a configuration file and link it in:

Preferences -> Configuration -> Logon -> Configuration File

When I checked the setting file that resides in ~/.SAPGUI:

############################################################
#
# file    : /home/user/.SAPGUI/settings
# created : 18.01.2018 20:17:10 GMT
# encoding: UTF-8
#
############################################################
@logonFrame_2_Y = "245"
@GLF_combidivider = "150"
@logonFrame_2_X = "384"
@LSSelection = "18f696cf-b8c2-4b69-b5c5-8eeb2dfe24d0:432f7f69-e058-4088-99c9-517a37ab09a4"
@GLF_recent = "432f7f69-e058-4088-99c9-517a37ab09a4"
@INCLUDE = "/home/user/Downloads/saprouter.ini"
@ftpProxyHost = ""
@httpProxyHost = ""
@httpProxyPort = "0"
@proxyMode = "0"
@httpsProxyPort = "0"
@ftpProxyPort = "0"
@httpProxyIgnore = ""
@httpsProxyHost = ""

And the SAPGUILandscape.xml:

<?xml version="1.0" encoding="UTF-8"?>
<Landscape updated="2018-01-30T19:25:55Z" version="1" origin="file:/home/user/.SAPGUI/SAPGUILandscape.xml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" generator="SAP GUI for Java 7.40 rev 4" xsi:noNamespaceSchemaLocation="SAPUILandscape.xsd">
  <Services>
    <Service name="test" expert="1" msid="" uuid="82aa1de3-76db-4e7d-b047-69a9e5b46ed8" type="SAPGUI" server="saprouter.hcc.in.tum.de:3297" mode="1"/>
  </Services>
  <Workspaces default="18f696cf-b8c2-4b69-b5c5-8eeb2dfe24d0">
    <Workspace expanded="1" name="JavaGUI Services" uuid="18f696cf-b8c2-4b69-b5c5-8eeb2dfe24d0" description="JavaGUI Services configuration">
      <Item uuid="432f7f69-e058-4088-99c9-517a37ab09a4" serviceid="82aa1de3-76db-4e7d-b047-69a9e5b46ed8"/>
    </Workspace>
  </Workspaces>
  <Messageservers>
    <Messageserver port="3297" name="MS" uuid="15b91bd3-5e4e-4887-aeea-939df9379517" host="saprouter.hcc.in.tum.de"/>
  </Messageservers>
  <Routers>
    <Router router="/" name="Router" uuid="5e119945-5975-4567-ab35-b1142568383f"/>

After one week of trials, any help will be very much appreciated.


Solution

  • I assume your file is invalid. There are ways to validate your SAPGUILandscape.xml (see note 2112449), or trying to read hundred-page manuals (1, 2), but better not to dig into all this mess and try to stick these simple steps.

    SAPgui Java has following connection string format:

     conn=/H/<SAP Router>/S/3299/H/<SAP server>/S/32<Instance_no>
    

    Multiple routers (if exist) are separated by /H/ directive.

    So I propose you to delete all config files (~/.SAPGUI folder), SAPgui will recreate them anyway. After deletion open SAPgui and enter connection string manually like this:

    conn=/H/saprouter.hcc.in.tum.de/S/3299/H/141.44.38.2/S/3299/H/141.44.39.3/S/3299/H/saprouter.hcc.in.tum.de/S/3297/H/hcchasap.informatik.tu-muenchen.de/S/3299/H/hcctum/S/3201
    

    If errors are thrown try to remove some of the routers, ping each of them, detect invalid ones and also ping server (hcctum).

    Dunno what is [Default] in your lecturer's notes, but I suppose it denotes server. It is non-standard section (see note 94435).