DE:RAPI
REST API für OpenStreetMap
Mit einer REST URL können OSM Daten aus mit Osmosis/PostGIS_Setup aufgesetzen Datenbank in Text oder XML Form abgerufen werden.
Die Abfrage ich ähnlich der Xapi
Es können Nodes, Ways, Relations und Users abgefragt werden.
Beispiele
http://localhost:8080/rapi/seam/resource/browse/node/125799
Liefert den Knoten 125799 mit sein Attributen als Text zurück.
http://localhost:8080/rapi/seam/resource/browse/node/list/dummy=1;amenity=restaurant;cuisine=chinese
Liefert alle Chinarestaurants als Textliste.
http://localhost:8080/rapi/seam/resource/browse/node/list/dummy=1;highway=bus_stop
Listet alle Bushaltestellen als Text
http://localhost:8080/rapi/seam/resource/browse/node/xml/dummy=1;amenity=restaurant;polygon=((8.0 53.0, 9 53.0, 9 54, 8 54, 8.0 53.0))
Liefert alle Restaurants im angegeben Polygon als XML
Es werden maximal 1000 Daten geliefert.
Der erste Parameter, hier mit dummy=1 angegeben, wird von der Anwendung ignoriert. Es kann für dummy=1 jeder andere Key/Value angegeben werden.
Die RAPI ist in Java geschrieben und setzt auf den Frameworks JBoss Seam, JBoss Resteasy und Hibernate auf. Es wird ein Osmosis/PostGIS_Setup Datenbank Schema vorrausgesetzt.
Source Code
Der Source Code ist bei Launchpad gehostet
Installation
Zum Betrieb der RAPI wird ein JBoss Application Server (JBoss AS) benötigt. Getestet wurde mit dem JBoss-5.1.0, welcher unter http://www.jboss.org/jbossas/downloads heruntergeladen werden kann. Das heruntergeladene Archiv ist zu entpacken, dabei wird das Verzeichnis jboss-5.1.0.GA erstellt, welches das JBOSS_HOME Verzeichnis ist.
Die Sourcen mit dem Befehl
bzr branch lp:rapi
herunterladen.
Es wird ein Verzeichnis rapi angelegt. Im Verzeichnis rapi müssen folgende Datei angepasst werden:
build.properties
jboss.home=/jbosshome
Der Eintrag /jbosshome ist durch das JBOSS_HOME Verzeichnis zu ersetzen.
In der Datei resources/jboss-rapi-ds.xml ist der Eintrag
<connection-url>jdbc:postgresql_postGIS://localhost/osmosis</connection-url>
ist anzupassen. Dabei ist localhost der Servername und osmosis der Datenbankname.
Die Anwendung wird mit
ant deploy
erstellt. Die Datei rapi.ear wird in das Verzeichnis JBOSS_HOME/server/default/deploy kopiert und vom JBoss AS automatisch deployed.
Der Applikation Server wird im JBOSS_HOME Verzeichnis mit run.sh gestartet.
Im Webbrowser ist die URL http://localhost:8080/rapi einzugeben. Es erscheint Startseite mit Bespiellinks. Die Beispiel verweisen auf Orte in Bremen.