|
XCP Blackboard | ||||
|
|||||
| Tip No. 3 Erstellen einer WAP Anwendung | |
AufgabeDie Außendienst-Mitarbeiter sollen das Telefonbuch der Firma über Ihr Handy über die Internetseite der Firma abfragen können. Wichtige Grundlagen:Das Abfragemodul erzeugt ein WML-Dokument. Dieses WML-Dokument kann dann über den Gateway des Handy-Providers auf einen Mobiltelefon mit WML-Browser dargestellt werden. Ein Grundlagen-Kurs WML findet sich unter: http://www.nokia.de/de/mobiltelefone/technologie/wml-kurs/4420.html
Weitere Ressourcen: Software für die Entwicklung:— Texteditor— Handy-WML-Browser-Simulator und je nach Bedarf ein WAP-Gateway-Simulator Zum Beispiel die Nokia-Tools unter http://www.forum.nokia.com Nach Anmeldung können Sie den WML-Browser-Simulator und das Gateway laden. Ein direkter Link kann hier nicht angegeben werden, da die Site sehr dynamisch ist. Suchen Sie nach Browser Simulator in der Suche der Site bzw. unter dem Link Tools&SDK. Um eine URL über den Simulator aufrufen zu können,muss bei dem Nokia-Simulator auch zuvor das Gateway auf der gleichen Maschine gestartet werden. — IXSQL Download unter: http://www.netcos.de/products/xcp_prod_download.html — Beispiel Code - Download ZIP. Hello World Beispiel:Zuerst prüfen wir mit einem Hello-World-Beispiel die richtige Konfiguration aller Komponenten
Anlegen eins Ordners in unserm XCP-Arbeitsverzeichnis: D:\xcp_software\ixsql-standard\jakarta-tomcat\webapps\ixsql-standardden Ordner wmldemo Dort wird die Datei start.xcp angelegt: start.xcp
<xcp:page gentype="taf">
<xcp:code>
<![CDATA[
this.response.setContentType("text/vnd.wap.wml");
]]>
</xcp:code>
<xcp:tag class="com.netcos.taf.TafTemplate">
<xcp:attribute name="page" readfile="templates/start.wml"/>
</xcp:tag>
</xcp:page>
up Wichtig ist hier das Setzen des Mime-Type der Antwort des XCP-Moduls mit:
this.response.setContentType("text/vnd.wap.wml");
So sieht das WML-Template aus: start.wml
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="Hello">
<p>Hello World to iXSQL WAP</p>
</card>
</wml>
Diese erste Datei wird als Template in der Datei start.wml im Unterordner templates abgelegt. Aufruf über die URL: http://localhost:28080/ixsql-standard/wmldemo/start.xcp Im Simulator erscheint der Text. Abfragen der Telefonauskunft:
1.) Verbindungsaufbau zur Datenbank ermöglichen
2.) Tabelle anlegen Aufbau:
SQL> create table Telefonliste ( id number(9)
,vorname varchar2(64)
,nachname varchar2(64)
,nummer varchar2(32)
);
Anlegen von Testdaten: SQL> insert into Telefonliste values (1,'Martin','Huber','089 785643'); 1 Zeile wurde erstellt. SQL> insert into Telefonliste values (2,'Gerlinde','Böck','089 905645'); 1 Zeile wurde erstellt. SQL> insert into Telefonliste values (3,'Hubert','Messerschmidt','089 5623895'); 1 Zeile wurde erstellt. SQL>commit;
3.) Die SQL Abfrage query.sql
select vorname,nachname,nummer
from Telefonliste
&where
Die SQL-Anweisung wird in der Datei query.sql gespeichert.
4.) Abfragemodul erstellen start.wml
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="Start">
<p>Telefonauskunft mit iXSQL WAP
<a href="#Telefon">Suchformular
</p>
</card>
<card id="Telefon">
<do type="accept">
<go href="query.xcp?qp_like_nachname=$qp_like_nachname"/>
</do>
<p>Nachname:
<input type="text" name="qp_like_nachname" title="Nachname"/>
</p>
</card>
</wml>
Dann muss die XCP-Seite für das Query-Modul erstellt werden: query.xcp
<xcp:page gentype="taf">
<xcp:code>
<![CDATA[
this.response.setContentType("text/vnd.wap.wml");
]]>
</xcp:code>
<xcp:tag class="com.netcos.taf.TafTemplate">
<xcp:attribute name="page" readfile="templates/query.wml"/>
<xcp:tag class="com.netcos.taf.TafMarkupSql">
<xcp:attribute name="sql" readfile="sql/query.sql"/>
</xcp:tag>
</xcp:tag>
</xcp:page>
Das passende Template:
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="Hello">
<p>Vorname - Nachname - Nummer</p>
##DATAROW_BEGIN##
<p>$$Vorname$$ - $$Nachname$$ - $$Nummer$$</p>
##DATAROW_END##
<p><a href="start.xcp">Zurück</a></p>
</card>
</wml>
Damit kann nun über ein WAP-Handy mit iXSQL die Telefonliste abgefragt werden.
|
|
| ©2005 netcos AG | www.netcos.de |