da ggf. andere Nutzer mit Windows 10 Probleme haben, schreibe ich hier einmal einige Anregungen und Fragen auf, da bei mir der AUFRUF des TSE-Connectors nicht gelingt.
Anmerkungen:
Bei Eingabe von
in die Windows Powershell (Administrator) kommt unter anderem folgende Meldung:PS C:\WINDOWS\system32> java -jar "C:\Users\Public\Documents\tseconnector\swissbit\tseconnector.jar"
MZusätzlich muss der Pfad zum Verzeichnis tseconnector_lib angegeben werden (sonst wird ein java.lang.UnsatisfiedLinkError gemeldet):
z.B. java -Djava.library.path=/usr/local/bin/tseconnector/swissbit/nativelibs/linux64 -jar tseconnector.jar mode=...
Es heißt in deiner Meldung "Verzeichnis tseconnector_lib". Weiter unten wird im Beispiel aber ..../swissbit/nativelibs/linuxt64 ... genannt.
Des Weiteren funktioniert bei mir offensichtlich nur java 9.04 und nicht die von java für windows10/64 aktuelle Version 8 Update 261. Bei der Version 8 Update 261 kommt die Fehlermeldung, dass bei der Compilierung eine aktuellere Version/Klasse (53) verwendet wurde, 8 /261 aber die Version/Klasse 52 hat. Vielleicht macht es Sinn, den TSE-Connector neu zu compilieren mit der Version 8 /261, da dass die aktuelle Version auf den Windows10-Rechnern ist.
Nun zu meinen Fragen:
Ich habe den TSE-Connector bei mir in folgendem Pfad abgelegt:
Den Aufruf starte ich daher wie in dem Beispiel angegeben mit folgendem Befehl und erhalte dann folgende Meldung:C:\Users\Public\Documents\tseconnector
Starte ich einen Aufruf wie folgt, erhalte ich diese Meldung:PS C:\> java -Djava.library.path="C:\Users\Public\Documents\tseconnector\swissbit\nativelibs\windows64"
Fehler: Hauptklasse .library.path=C:\Users\Public\Documents\tseconnector\swissbit\nativelibs\windows64 konnte nicht gefunden oder geladen werden
Ursache: java.lang.ClassNotFoundException: /library/path=C:\Users\Public\Documents\tseconnector\swissbit\nativelibs\windows64
Gebe ich, so wie ich meine, den Pfad komplett ein, kommt folgende Meldung:PS C:\> java -jar "C:\Users\Public\Documents\tseconnector\swissbit\tseconnector.jar"
Keine Aufrufparameter übergeben. Standardwerte werden benutzt!
TSEConnectors kann folgende Parameter verarbeiten:
pass=xyz Das Passwort des TSEConnectors. In der OrderSprinter-Administrationsansicht einstellen!
port=8000 Der TCP-Port, über den OrderSprinter-Core mit dem TSEConnector kommunizieren soll
mountpoint=/media/account/SWISSBIT Das Laufwerk/Mountpoint der Swissbit-TSE
mode=normal Falls der Wert auf "simulate" eingestellt wird, wird die TSE nur simuliert.
Zusätzlich muss der Pfad zum Verzeichnis tseconnector_lib angegeben werden (sonst wird ein java.lang.UnsatisfiedLinkError gemeldet):
z.B. java -Djava.library.path=/usr/local/bin/tseconnector/swissbit/nativelibs/linux64 -jar tseconnector.jar mode=...
Start TSEConnector mit diesen Parametern:
pass= 123
port= 8000
supplier= swissbit
mountpoint=/media/stefan/SWISSBIT
mode= normal
java.lang.UnsatisfiedLinkError: no WormAPI in java.library.path
at java.base/java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.base/java.lang.Runtime.loadLibrary0(Unknown Source)
at java.base/java.lang.System.loadLibrary(Unknown Source)
at com.secureflashcard.wormapi.WormAPIJNI.<clinit>(WormAPIJNI.java:14)
at com.secureflashcard.wormapi.WormStore.<init>(WormStore.java:233)
at tseconnector.tseconnector.main(tseconnector.java:82)
Die gleiche Meldung kommt wenn die Eingabe wie folgt lautet:PS C:\>java -Djava.library.path="C:\Users\Public\Documents\tseconnector\swissbit\nativelibs\windows64" -jar tseconnector.jar pass=678 mode=simulate
Fehler: Hauptklasse .library.path=C:\Users\Public\Documents\tseconnector\swissbit\nativelibs\windows64 konnte nicht gefunden oder geladen werden
Ursache: java.lang.ClassNotFoundException: /library/path=C:\Users\Public\Documents\tseconnector\swissbit\nativelibs\windows64
Steuere ich den TSE-Connector direkt im selben Verzeichnis an, gelingt die Übernahme der Parameter:PS C:\> java -Djava.library.path="C:\Users\Public\Documents\tseconnector\swissbit\nativelibs\windows64" -jar "C:\Users\P
ublic\Documents\tseconnector\swissbit\tseconnector.jar" pass=678 mode=simulate
Fehler: Hauptklasse .library.path=C:\Users\Public\Documents\tseconnector\swissbit\nativelibs\windows64 konnte nicht gefunden oder geladen werden
Ursache: java.lang.ClassNotFoundException: /library/path=C:\Users\Public\Documents\tseconnector\swissbit\nativelibs\windows64
Letzte Frage:PS C:\users\public\documents\tseconnector\swissbit> java -jar tseconnector.jar mode=simulate pass=5678
TSEConnectors kann folgende Parameter verarbeiten:
pass=xyz Das Passwort des TSEConnectors. In der OrderSprinter-Administrationsansicht einstellen!
port=8000 Der TCP-Port, über den OrderSprinter-Core mit dem TSEConnector kommunizieren soll
mountpoint=/media/account/SWISSBIT Das Laufwerk/Mountpoint der Swissbit-TSE
mode=normal Falls der Wert auf "simulate" eingestellt wird, wird die TSE nur simuliert.
Zusätzlich muss der Pfad zum Verzeichnis tseconnector_lib angegeben werden (sonst wird ein java.lang.UnsatisfiedLinkError gemeldet):
z.B. java -Djava.library.path=/usr/local/bin/tseconnector/swissbit/nativelibs/linux64 -jar tseconnector.jar mode=...
Start TSEConnector mit diesen Parametern:
pass= 5678
port= 8000
supplier= swissbit
mountpoint=/media/stefan/SWISSBIT
mode= simulate
Abgeschlossen Startup des TSEConnectors
Als "nur" PowerUser weiß ich nicht so recht, was mountpoint ist bzw. was ich in meinem Fall hier eingeben muss oder ob er nur für Linux gilt. Bei Dir heißt es:
Bei mir könnte es dann ggf. heißen (Laufwerk der TSE)mountpoint=/media/stefan/SWISSBIT
Möglicherweise ist diese Angabe aber im Simulationsmodus nicht erforderlich, oder doch?mountpoint="C:\SWISSBIT"
Ich hoffe, ich kann hiermit auch ein wenig zum Gelingen beitragen und freue mich den TSE-Connector zunächst im Simulatiosmodus testen zu können, bevor es dann "ernst" wird.
Michael Roeßgen