Kort & Matrikelstyrelsen <strong>Kortforsyningen</strong> Version 2.13, 2010-05-21 Geonøgle T (geoT) Header Body Tekststruktur in_mini_label in_coor_x in_coor_y in_coor_z out_mini_label out_coor_x out_coor_y out_coor_z Trailer 1 Output eksempel: - - s34s 200000 200000 0 utm32_euref89 595254,05 6232728,28 0,00 Forekomst 1 1 Side 82 <strong>af</strong> 94
Kort & Matrikelstyrelsen <strong>Kortforsyningen</strong> Version 2.13, 2010-05-21 Fejlhåndtering/exceptions Hvis man ikke har opbygget sin URL ud fra retningslinjerne beskrevet tidligere vil man få en fejlmeddelelse retur i stedet for søgeresultatet. Fejlmeddelelser returneres i det format som parameteren EXCEPTIONS angiver. Er EXCEPTIONS ikke angivet vil fejlmeddelelsen returneres i ASCII. Bearbejdning <strong>af</strong> output Laves et http request med en URL jf. <strong>af</strong>snittet Opbygning <strong>af</strong> URL vil man i en Internet-browser se det returnerede resultat se figur nedenfor til venstre. Vil man arbejde videre med resultatet i en applikation (fx vil man gerne trække koordinaterne ud <strong>af</strong> resultatet med henblik på at få vist positionerne på et kort) må man manipulere med resultatet, man fik returneret. For at kunne arbejde videre med outputtet kan man benytte en Java Applet eller, hvis man har valgt returformatet XML, en XML-parser. Der findes adskillige XML-parsere, bl.a. leveres der en med Microsoft Internet Explorer. Vil man benytte en Java Applet, så skal man bruge den, der ligger på kortforsyningen.kms.dk, idet en Java Applet installeret på en anden maskine medfører brud på Java Net Security. Java Appleten kan tilgås via http://kortforsyningen.kms.dk/web/jpost.class. Java Appleten har en funktion, der kan requeste den opbyggede URL og skrive resultatet til en variabel i stedet for at få vist resultatet direkte i en Internet-browser. Ved at skrive resultatet til en variabel kan man manipulere resultatet og på den måde få trukket lige netop de informationer ud, som man er interesseret i. Dem kan man efterfølgende vise i Internet-browseren. Nedenstående eksempel viser, hvordan Java Appleten benyttes. Eksempel på en applikation 1 Design web-siden Indtast eller indsæt HTML kildekoden fra Appendiks B i en HTML-editor og gem dokumentet (vælg selv et filnavn): 2 Et par praktiske detaljer Gem dokumentet med et vilkårligt filnavn (lad det slutte på .htm eller .html). Husk også at have internetforbindelsen åben. 3 Test applikationen Åbn hjemmesiden i en Internet-browser og test om det virker. 4 Hvad gør koden? Nederst i HTML-koden indsættes Java Appletten. Vi er ikke interesseret i, at den skal vises, da den blot tager resultatet <strong>af</strong> vores søgning og skriver til en variabel. Derfor er dens bredde og højde sat til 0. Der er også en tekstfelt med navnet txtStednavn, hvori vi kan skrive det stednavn, vi søger, ligesom der også er en listboks med navnet lstMaxHits, hvor vi kan vælge det ønskede antal maksimale resultater. Endelig er der en knap med teksten Søg, som vi kan trykke på for at starte søgningen. Til denne knap er der knyttet hændelsen onclick, det vil sige, når der med musen klikkes på knappen. Når denne hændelse indtræffer <strong>af</strong>vikles funktionen CreateTable() som også benytter funktionen BuildURL(). Funktionerne er skrevet i JavaScript, der er et makrosprog til brug på web-sider. CreateTable() kalder også funktionen postURL() i JavaAppletten. Den funktion laver et http request med vores URL, som blev opbygget i BuildURL() vha. det stednavn vi har indtastet samt vores valg <strong>af</strong> maksimale resultater i listboksen. Funktionen postURL() returnerer herefter resultatet til variablen Results. Denne variabel benytter vi til at trække informationerne ud <strong>af</strong>, og skrive dem i en tabel. Denne tabel udskrives herefter i vores Internetbrowser. Der er her ikke yderligere forklaringer til CreateTable(), da der er kommentarer i JavaScript-koden. Læg mærke til at Java Appletten ikke gør noget, før vi trykker på knappen med teksten Søg. For at vi overhovedet kan kalde Java Appletens metode fra JavaScript skal Java Appleten navngives i HTML-koden. Dette gøres med attributten name fx name=myapplet, hvor attributtens værdi sættes til myapplet. Side 83 <strong>af</strong> 94