Java Web Services via REST bereitstellen
ulrich@undisclosed
2020-05-03 f097aaac341da2aab7e18503fb72953efff49f51
commit | author | age
cbc490 1
U 2 # Transit
3
f097aa 4 Java-Code auf einem Server lässt sich mit Transit ohne statische Annotationen via Ajax rufen. Ein einfacher Uniform Resource Locator (URL) wie der folgende genügt:
854879 5
ffb9b0 6 `http://example.com/package.klasse/methode/format/param1/param2/../paramN`
854879 7
1da9cc 8 Weitere Informationen auf der [Produktseite](/data/pg/transit/)
854879 9
U 10 ## Voraussetzungen
11
f097aa 12 Zur Herstellung und Nutzung von Transit werden ein Java Development Kit (JDK) und der Quellcode von Transit benötigt. Das JDK ist z.B. von [Azul](http://azul.com) oder dem [OpenJDK-Projekt](http://openjdk.java.net/) frei erhältlich. In der hier folgenden weiteren Beschreibung wird der lokale Ablageort des Java Development Kits `$JDK` genannt. Desweiteren werden die folgenden Klassenbibliotheken benötigt:
854879 13
U 14 ```
15 Bibliothek            Datei(en)                       Ablageort lokal
16 ----------            ---------                       ---------------
17 XStream ............. xstream-1.4.7.jar ............. $JLIB
18 Jettison ............ jettison-1.3.3.jar ............ $JLIB
19 ```
20
21 Diese sind an folgenden Orten frei erhältlich:
22
5accd1 23 - [XStream](https://x-stream.github.io/)
U 24 - [Jettison](http://repo.maven.apache.org/maven2/org/codehaus/jettison/jettison/1.2/jettison-1.2.jar)
6a4dbe 25 - [XStream auf Github](https://github.com/codehaus/xstream)
U 26 - [Jettison auf Github](https://github.com/codehaus/jettison)
854879 27
U 28 ## Transit erhalten
29
f097aa 30 Der Quellcode von Transit wird von hier an einen frei wählbaren lokalen Ablageort [heruntergeladen](/gitblit/zip/?r=Transit.git&format=zip) und entpackt. In der hier folgenden weiteren Beschreibung wird das so entstandene Verzeichnis `Transit` einschließlich des absoluten Pfades dorthin `$TRANSIT` genannt. Anstelle von `$TRANSIT` würde man also beispielweise `/home/fred/Transit` notieren, wenn in das persönliche Verzeichnis des Benutzers `fred` heruntergealden und entpackt wurde. Ferner wird angenommen, dass die oben aufgeführten Klassenbibliotheken lokal an Orten abgelegt sind, deren Pfade mit dem Platzhalter `$JLIB` gemeint ist. Anstelle des Platzhalters muss in den folgenden Kommandos also der absolute Pfad des lokalen Ablageortes eingesetzt werden.
854879 31
U 32 ## Klassenbibliothek herstellen
33
f097aa 34 Transit ist zur Nutzung im Zusammenspiel mit anderen Programmen vorgesehen und wird dazu am besten als Klassenbibliothek genutzt. Zur Herstellung einer Klassenbibliothek werden mit Hilfe der wie zuvor beschrieben geladenen Teile die folgenden Kommandos ausgeführt (Beispiel für Linux):
854879 35
U 36 ```
37 cd $TRANSIT
38 mkdir classes
39 mkdir dist
40
41 $JDK/bin/javac -classpath $JLIB/jettison-1.3.3.jar:$JLIB/xstream-1.4.7.jar -d classes src/de/uhilger/transit/*.java src/de/uhilger/transit/test/*.java src/de/uhilger/transit/web/*.java
42
43 $JDK/bin/jar -cf dist/Transit.jar -C classes .
44 rm -r classes
45 ```
46
47 Die fertig verwendbare Klassenbibliothek liegt anschließend unter `$TRANSIT/dist/Transit.jar`.
48
49 ## Klassenbibliothek verwenden
50
f097aa 51 Zur Verwendung der Klassen von Transit wird die Klassenbibliothek in den Classpath des Programmes aufgenommen, von dem aus Transit genutzt werden soll. Details zur Nutzung von Transit sind in der [Anleitung](/data/pg/transit/anleitung.adoc) beschrieben.