Razvoj naprednih storitev za GIS
Dodatek A Navodila za uporabo sistema

Zahvala Kazalo Seznam uporabljenih kratic in simbolov 1 Povzetek 2 Abstract 3 Uvod 4 Opis problema 5 Načrt sistema 6 Podatkovni model 7 Geokodiranje 8 Nasprotno geokodiranje 9 Usmerjanje 10 Izkušnje in nadaljnje delo 11 Sklep Dodatek A Navodila za uporabo sistema Literatura

+ Lastnosti dokumenta

Naslov
Razvoj naprednih storitev za GIS
Del
Dodatek A Navodila za uporabo sistema
Datum vsebine
21. 11. 2009
Original
RazvojNaprednihStoritevZaGIS.pdf
Vrsta
diplomska naloga
Jezik
slovenščina
Različica
1.0
Ustanova
Fakulteta za računalništvo in informatiko, Univerza v Ljubljani
Študij
Univerzitetni, računalništvo in informatika, logika in sistemi
Predmet
-
Mentor
doc. dr. Mojca Ciglarič
Avtor
Tine Lesjak
Ocena
10 od 1-10

Gre za celotno diplomsko delo s predstavitvijo.

Dodatne objave dela:

+ Priloge

predstavitev.pdf
Predstavitev diplomskega dela na zagovoru (dne 22. 10. 2009).
projekti.zip
Vsa izvorna koda v obliki SpringSource Tool Suite projektov (združljivi z Eclipseom) pod licenco Creative Commons Attribution 2.5 Slovenia License
primeri.zip
Primeri, predstavljeni kot izvlečki kode v diplomskem delu.
tinel-gis-geocoding.war
Storitev geokodiranja.
tinel-gis-reversegeocoding.war
Storitev nasprotnega geokodiranja.
tinel-gis-routing.war
Storitev usmerjanja.

Kratka navodila za razvoj, testiranje, pakiranje in poganjanje sistema.

Seznam pomembnih uporabljenih orodij in njihovih različic:

Sistem je sestavljen iz trinajstih paketov, ki so hkrati projekti za okolje SpringSource Tool Suite (STS):

  1. tinel-commons
  2. tinel-gis-parent
  3. tinel-gis-model
  4. tinel-gis-common-client
  5. tinel-gis-common-server
  6. tinel-gis-geocoding-client
  7. tinel-gis-geocoding-compass
  8. tinel-gis-geocoding-server
  9. tinel-gis-reversegeocoding-client
  10. tinel-gis-reversegeocoding-server
  11. tinel-gis-routing-client
  12. tinel-gis-routing-server
  13. tinel-gis-client

Vsi projekti so pripravljeni za uporabo z orodjem Maven (vsi imajo datoteke pom.xml). Projekt tinel-gis-parent je poseben. Je glavni projekt, ki ne vsebuje nobene izvorne kode, le definira sestavo vseh ostalih projektov, ki so v tem smislu njegovi podprojekti.

Sistem potrebuje delujočo podatkovno zbirko. Po namestitvi PostgreSQL-ja z dodatkom PostGIS moramo najprej ustvariti novo zbirko. To najlažje storimo s priloženim orodjem pgAdmin. Za ustvarjanje entitet z relacijami je pripravljena skripta groovy DbSchemaCreator.groovy, ki se nahaja v projektu tinel-gis-model v direktoriju src/main/java. V skripti nastavimo ustrezen naslov do nove zbirke (polje dbUrl), uporabniško ime (polje dbUser) in geslo (polje dbPassword). Nato skripto poženemo v okolju Groovy, pri čemer ne smemo pozabiti na vključitev knjižnice PostgreSQL JDBC. Podatkovni zbirka bi sedaj morala biti pripravljena in čas je, da jo napolnimo s svojimi geografskimi podatki.

Ko uspešno namestimo JDK, Maven in STS, lahko projekte preprosto uvozimo v delovno okolje STS-ja in tam opravimo večino potrebnih nalog. Lahko pa se izognemo STS-ju in sistem zapakiramo lastnoročno, z uporabo Mavena:

V konzoli se postavimo v glavni projekt tinel-gis-parent in preprosto poženemo:

mvn install

V direktorij target od strežnikov tinel-gis-geocoding-server, tinel-gis-reversegeocoding-server in tinel-gis-routing-server bo Maven zapakiral vsak strežnik v obliki WAR. Datoteko WAR samo prenesemo v enega izmed vsebnikov (npr. Tomcat ali Jetty) in sistem bi moral delovati.

Pred pakiranjem (in testiranjem v okolju STS) moramo pregledati še nastavitve. Vsaka storitev posebej vsebuje datoteko db.properties (nahaja se v direktoriju src/main/resources), ki definira dostop do podatkovne zbirke (lokacijo, uporabniško ime, geslo), in datoteko za ostale nastavitve (geocoding.properties, reverseGeocoding.properties, routing.properties), ki jo je smiselno pregledati.

Pri aktivnem testiranju, ki ga je smiselno opravljati le v okolju STS, je na voljo precej testov, ki za delovanje nujno potrebujejo podatkovno zbirko. Zato se ti testi ob pakiranju ignorirajo. Namenjeni so samo razvijalcem (sam sem z njimi opravil vse meritve zmogljivosti), med njimi so celo "testi", ki samo poženejo vdelan vsebnik Jetty. Ti testi se ignorirajo tudi ob ročnem zagonu v okolju STS, zato jim moramo najprej odstraniti oznako @Ignore.

Zahvala Kazalo Seznam uporabljenih kratic in simbolov 1 Povzetek 2 Abstract 3 Uvod 4 Opis problema 5 Načrt sistema 6 Podatkovni model 7 Geokodiranje 8 Nasprotno geokodiranje 9 Usmerjanje 10 Izkušnje in nadaljnje delo 11 Sklep Dodatek A Navodila za uporabo sistema Literatura