Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Дейтел Х.М. -> "Технологии профаммирования на Java 2 Книга 3" -> 117

Технологии профаммирования на Java 2 Книга 3 - Дейтел Х.М.

Дейтел Х.М. , Дейтел П.Дж., Сантри С.И. Технологии профаммирования на Java 2 Книга 3 — М.: Бином-Пресс, 2003. — 672 c.
ISBN 5-9518-0051-Х
Скачать (прямая ссылка): tehprogrammjava220033.pdf
Предыдущая << 1 .. 111 112 113 114 115 116 < 117 > 118 119 120 121 122 123 .. 271 >> Следующая

В строках 10-12 листинга на рис. 5.16 с помощью элемента xsl:ontput задается DTD. В строке 16 задается, что элемент answer является корневым элементом в XML-документе, который будет подвергнут трансформации с помощью таблицы стилей WAPTipAnswer.xsl. WML-документ начинается в строке 18 элементом wml. В строках 20-48 осуществляется объявление карты (экрана с ответом) в составе этого WML-документа. В строке 29 используется элемент correct WML-документа для отображения, является ли выбранный пользователем ответ правильным. В строках 37 и 45 элементы correctTipName и correctTipDescription используются, соответственно, для отображения названия рубрики советов и ее описания для правильного ответа. Используя элемент servletName в XML-документе, элемент do (строки 22-26) предоставляет ссылку на сервлет TipTestServIet, чтобы пользователь мог получить следующий вопрос теста Tip-Test. На рис. 5.17 показан экран с ответом на вопрос теста Tip-Test в имитаторе Openwave UP.
1 <?xml version="1.0"?> 2
3 <!— WAPTipAnswer.xsl —>
4 <!— таблица стилей для клиента WAP —> 5
6 <xsl:stylesheet
7 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
8 version="!.O">
9 10 11 12 13
<xsl:output method — "xml" omit-xml-declaration = "no"
doctype-system = "http://www.wapforum.0rg/DTD/wml_l.l.xml doctype-public = "-//WAPFOROM//DTD WML l.l//EN"/>
266
Глава 5
14 <!— задание корня XML-документа, —>
15 <!— указывающего на эту таблицу стилей —>
16 <xsl: template match = "answer"> 17
18 <wml>
19
20 <card id = "cardl" title = "Tip Test Answer">
21
22 <do type = "accept" label = "OK">
23 <go method = "get"
24 href = '7advjhtpl/tipteet">
25 </go>
26 </do> 27
28 <p>
29 <xsl:value-of select = "correct"/>
30 </p> 31
32 <p>
33 Tip Name
34 </p> 35
36 <p>
37 <xsl:value-of select = "correctTipName"/>
38 </p> 39
40 <p>
41 Tip Description
42 </p> 43
44 <p>
45 <xsl:value-of select = "correctTipDescription"/>
46 </p> 47
48 </card>
49
50 </wml>
51 </xsl:template>
52 </xsl:stylesheet>_
Рис. 5.16. Таблица стилей WAPTipAnswer.xsl трансформирует ответ в WML-документ
5.3.3. Запрос от браузера i-mode Pixo
Если изначальный get-запрос поступил сервлету TipTestServlet (рис. 5.9) от браузера Pixo, в строках 217-229 определяется, что обратившийся с запросом клиент — это клиент i-mode. В строках 220-223 осуществляется вызов метода createXMLTipTestQuestion для создания XML-документа, который содержит вопрос теста Tip-Test. Используя параметры для этого метода, мы задаем, что рисунки для обозначения рубрик советов имеют формат gif и расположены в каталоге iMode/images контекста сервлета. В строке 226 устанавливается МГМЕ-тип text/html для создания cHTML-содержимого. В строках 227-228 осуществляется вызов метода applyXSLT для применения к XML-документу таблицы стилей IMODETipQuestion.xsl (рис. 5.18).
Разработка приложений для беспроводной связи на базе Java и J2ME
267
Рис. 5.17. Экран имитатора Openwave UP с ответом на вопрос теста Tip-Test. (Изображение UP.SDK предоставлено компанией Openwave Systems Inc. Openwave, логотипы Openwave и UP.SDK являются торговыми марками корпорации Openwave
Systems Inc. Все права соблюдены.)
1 <?xml version="l.0"?>
3 <!— IMODETipQuestion.xsl —>
4 <!— таблица стилей для клиента i-mode —>
6 <xsl: stylesheet version = "1.0"
7 8 9 10 11 12 13 14 15 16
17 18 19 20 21 22 23 24 25 26 27 28
xmlns:xsl = "http://www.w3.org/1999/XSL/Transform">
<xsl:output method = "html" omit-xml-declaration = "yes"
doctype-public = "-//W3C//DTD Compact HTML 1.0 Draft//EN"/>
<!— задание корня XML-документа, —>
<!— указывающего на эту таблицу стилей —> <xsl: template match = "guestion">
<html>
<head>
<title>Tip Test</title> </head>
<body>
<p>
<!— вывод изображения —> <img name = "image" height = "40" width = "40" alt = "Tip Image" src = "{image)">
268
Глава 5
29 </img>
ЗО </p>
31
32 <P>
33 What is the name of the icon shown?
34 </p>
35
36 <P>
37
38 <!— создание формы с четырьмя переключателями
39 <form method = "post"
40 action = "/advjhtpl/tiptest">
41
42 <!— построение таблицы с вариантами выбора
43 <table>
44 <tr>
45 <td>
46 <input type = "radio"
47 name = "userAnswer" value = "0"
48 </input>
49 <xsl:value-of select =
50 "choices/choice[1]"/>
51 </td>
52
53 <td>
54 <input type = "radio"
55 name = "userAnswer" value = "1"
56 </input>
57 <xsl:value-of select =
58 "choices/choice[2]"/>
59 </td>
60 </tr>
61
62 <tr>
63 <td>
64 <input type = "radio"
65 name = "userAnswer" value = "2"
66 </input>
67 <xel:value-of select =
68 "choices/choice[3]"/>
69 </td>
70
71 <td>
72 <input type = "radio"
73 name = "userAnswer" value = "3"
74 </input>
75 <xsl:value-of select =
76 "choices/choice[4]"/>
77 </td>
78 </tx>
79 </table>
80
81 <input type = "submit" value = "Submit"/>
82 </form>
83 </p>
84
Разработка приложений для беспроводной связи на базе Java и J2ME 269
85 </body>
86 </html>
87 </x8l:template>
88 </xsl:stylesheet>
Рис. 5.18. Таблица стилей IMODETipQuestion.xsl трансформирует вопрос теста Tip-Test в формате XML в cHTML-документ
Предыдущая << 1 .. 111 112 113 114 115 116 < 117 > 118 119 120 121 122 123 .. 271 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100