Java SAP GUI w środowisku 64 bitowym
Pracując na platformie Windows mamy możliwość zainstalowania dwóch różnych programów klienckich zapewniających użytkownikom dostęp do systemów SAP. Albo wykorzystujemy SAPGUI, albo SAPGUI for Java (pomijam dostęp przez WWW). W systemach Linux/Unix mamy tylko wersję SAPGUI Java.
Ostatnio pojawiła się nowa wersja SAPGUI for the Java Environment 7.10 rev 6, ale póki co nadal tylko dla systemów 32 bitowych. Co więc należy zrobić, jeżeli chcemy korzystać z SAPGUI w systemie 64 bitowym? Z takim problemem zetknąłem się w momencie, kiedy zainstalowałem 64 bitowe OpenSUSE 11. Dla ułatwienia opiszę cały proces instalacji i uruchomienia SAPGUI.
Najpierw instalujemy SAPGUI (skorzystam tu z PlatinGUI-Linux-710r6.jar). Jako root wykonujemy komendę:
java –jar PlatinGUI-Linux-710r6.jar
Rozpocznie się proces instalacji. W momencie, gdy pakiet jest już zainstalowany możemy go uruchomić wpisując w konsoli komendę ./guilogon (oczywiście będąc w katalogu, w których się ten program znajduje).
SAPGUI uruchomi się bez problemu, ale jeżeli tylko spróbujemy połączyć się z jakimkolwiek systemem, to pojawi się błąd.
Najpierw dodajmy nowy system. W zakładce Advanced dopisujemy linię:
Conn=/H/RDREZEK1/S/3200
W tym przykładzie „RDREZEK1” jest nazwą komputera, którą możemy zastąpić numerem IP (jeżeli serwer, z którego korzystamy ma przydzielone stałe IP).
Ostatnie dwie cyfry (‘00’), to numer systemu. Znajomość SID nie jest konieczna, bo nawet w SAPGUI w Windows ta informacja jest ignorowana przy połączeniu (nie wiem po co ją trzeba podawać).
Poniżej wynik próby połączenia.
Pojawił się błąd (JniAgiLibAdaptor.<init>: Cannot load INI library). Aby go rozwiązać instalujemy 32 bitowe środowisko Java (zainstalowałem z pliku jre-6u7-linux-i586-rpm.bin , więc cały opis dotyczy tego pakietu).
Po zainstalowaniu musimy sprawdzić, jaka jest ścieżka dostępu.W przypadku zainstalowanego przeze mnie pakietu Java zainstalowała się w katalogu /usr/java/jre1.6.0_07/
Znając tę ścieżkę wystarczy, że przed uruchomieniem SAPGUI ustawimy trzy zmienne systemowe. Aby sobie ułatwić sprawę napisałem krótki skrypt BASH, który te zmienne ustawia. Wystarczy, że wykonam ten skrypt i SAPGUI uruchomi się poprawnie na 64 bitowym systemie.
#!/bin/bash
echo Uruchamianie SAPGUI w środowisku 64-bitowym
cd /opt/SAPClients/SAPGUI7.10rev6/bin
export PLATIN_JAVA=/usr/java/jre1.6.0_07/bin/java
export PLUGIN_HOME=/usr/java/jre1.6.0_07/plugin
export JAVA_HOME=/usr/java/jre1.6.0_07/
./guilogon




Thursday, 20 November, 2008 at 14:49
Mała uwaga do mojego wpisu:
Instalując SAPGUI w SLES 10 SP2 x86_64 pojawiał się błąd przy wywołaniu
java -jar PlatinGUI-Linux-710r6.jar
The java class could not be loaded. java.lang.UnsupportedClassVersionError: (com/sap/platin/micro/Microkernel) bad major version at offset=6
Pomogło zainstalowanie jre-6u10-linux-i586.rpm i wykonanie instalatora w katalogu
/usr/java/jre1.6.0_10/bin poprzez komendę:
./java -jar PlatinGUI-Linux-710r6.jar
Wednesday, 20 May, 2009 at 21:45
Sytuacja może nie identyczna ale może mógłbym prosić o pomoc. Dotyczy SAP GUI na Javie w środowisku Mac OS X. Ze swojego hotline, który absolutnie nie wspiera maków, dostałem kilka plików konfiguracyjnych z poleceniem wrzucenia do odpowiednich katalogów po instalacji Sap’a ale pod Windowsami. Niestety pliki źle się wczytują do SAP GUI pod OS X, zamiast widzieć w okienku logowania:
BWS..
ERP…
…
widzę kompletnie niezrozumiały listing:
1.
2.
3.
Pod Pararels dającym możliwość wirtualizacji Windows XP wykonałem instalację jak hotline przykazał i sprawdziłęm netstatem pod jakie IP się SAP GUI łączy i po jakim porcie. Czy stosując expert mode i polecenie jak w Twoim przypadku mogę się bezpośrednio połączyć do serwera usług? czy jest też możliwość jakiegoś zaadaptowania plików konfiguracyjnych z windows by były poprawnie interpretowane pod OS X? Z góry dziękuję za pomoc.
Thursday, 21 May, 2009 at 08:48
Witam,
Prawdopodobnie dostałeś (między innymi) plik “saplogon.ini” który w Windows jest w katalogu C:\windows. jeżeli nie, to poproś o ten plik. On Ci wystarczy.
W pliku tym znajduje się definicja systemów, z czego najbardziej interesujące w Twoim przypadku są sekcje:
[Server] -nazwa serwera powiedzmy “serverABC”
[Database] - numery systemów, powiedzmy “XY”
Ważne jest abyś dopasował poszczególne pozycje w tych sekcjach (czyli Item1 z [Server] do Item1 w [Database].
[Server] może być adresem IP lub adresem typu “nasz.super.sewer.pl”
Jak znajdziesz te wpisy, to stwórz w SAPGUI dla Java wpisy typu:
Conn=/H/serverABC/S/32XY
Masz to opisane w poście.
XY to numer który odczytałeś w sekcji [Database].
Cały opis dotyczy sytuacji gdy nie ma routera (jeżeli jest to daj znać).
Pozdrawiam
Rafał
Thursday, 21 May, 2009 at 16:15
Witaj,
dziękuję serdecznie za pomoc. Stosując się do Twoich wskazówek, korzystając z wspomnianego pliku konfiguracyjnego i przebiegłości własnej (netstat) odpaliłem i działa!
W pliku *.ini niestety nie było zapisu odpowiadającego za IP serwera z tą usługą ale reszta informacji a owszem. W sprawie IP pomógł netstat odpalony pod cmd. Teraz mam nawet auto logowanie… Dziękuję!
Wednesday, 31 March, 2010 at 09:05
mały komentarz dotyczący Ubuntu 9.10 64 bit
Instalacja 32 bitowej javy:
sudo apt-get install ia32-sun-java6-bin
Standadrodow zainstalowała się w
/usr/lib/jvm/ia32-java-6-sun-1.6.0.15