Официальный сайт студ.городка НГТУ
Программирование и БД » [WML] Создание WAP-сайта 

#1  12.02.06 02:42

[WML] Создание WAP-сайта

Хочу создать вап-сайт... Есть ли такие программы (редакторы)? Вэб-строительством занимаюсь 3 года, а вап-сайт никогда не пробовал создавать... а щас чё-то заинтересовался.
Кто делал - опишите плиз чё да как делается.
Про хостинг и пр. ерунду - не пишите. Интересует именно процесс создания, с остальными проблемами сам разберусь.

Offline

#2  12.02.06 12:27

Re: [WML] Создание WAP-сайта

возьми любой ваповский сайт посомтри исходник и если хтмл знаешь то проблем не убит

Offline

#3  12.02.06 15:04

Re: [WML] Создание WAP-сайта

Вап-сайты строятся не совсем обычно, они основаны на так называемых картах

www.realcoding.net

Wireless Application Protocol
(Версия для печати)

С бурным развитием беспроводных устройств, таких как, например, мобильные телефоны, неудивительно, что возникла необходимость обеспечить подобные устройства средствами доступа в Интернет. Такие устройства, в отличие от обычных персональных компьютеров, имеют слишком мало ресурсов для того, чтобы использовать уже существующие спецификации протоколов. Поэтому была разработана спецификация протокола для передачи и получения данных из Интернета с помощью беспроводных устройств. Этот протокол назвали WAP (Wireless Application Protocol). В этой статье я попытаюсь рассказать о том, что это такое, а также о некоторых смежных спецификациях (WML, WMLScript).

WAP создавался и проектировался как средство, объединяющее все лучшее из уже существовавших стандартов, таких как HDML (Handheld Device Markup Language) и HDTP (Handheld Device Transport Protocol), разработанные компанией Unwired Planet. Помимо этого существовали также SMP (Smart Messaging Protocol) от Nokia и ITTP (Intelligent Terminal Transfer Protocol) от Ericsson. WAP изначально разрабатывался как открытый стандарт, что дало возможность использовать его не только в мобильных телефонах, но и во множестве других беспроводных устройств для доступа к данным в Интернет и его сервисам. Поскольку WAP базируется на старых, проверенных стандартах, разрабатывать WAP-сервисы значительно проще, особенно для Java-разработчиков.
Как уже упоминалось выше, ресурсы мобильных устройств не позволяют им использовать все сервисы Интернет. Если брать во внимание очень небольшой экран у мобильного телефона, то становится очевидным, что использование HTML как языка разметки абсолютно неприемлемо. В основном из-за своих богатых возможностей он никак не вписывается в формат данных, которые способен отображать, например, экран мобильного телефона. Эта проблема была решена введением нового XML-совместимого языка WML, о котором мы поговорим позже, а сейчас перейдем к рассмотрению архитектуры WAP.

Любое WAP-enabled-устройство (то, которое поддерживает WAP) содержит реализацию стека специальных коммуникационных протоколов. Фактически каждое такое устройство содержит не совсем обычный браузер, который и позволяет пользователю с помощью этого устройства пользоваться WAP-сервисами. Это что касается стороны клиента. В серверной части все обстоит несколько сложнее. Тут необходима реализация другой части стека протоколов, которая позволит организовать взаимосвязь с WAP-клиентами. Буферной зоной между WAP-клиентом и web-сервером является WAP-шлюз. Такой шлюз может быть организован как непосредственно в сети мобильного оператора, так и в компьютерной сети интернет-провайдера.


Таким образом, WAP-шлюз играет роль транслятора запросов и ответов WAP-клиента в WWW и наоборот. Благодаря чему нет необходимости изобретать колесо, и данные для WAP-клиентов можно размещать на обычном web-сервере.
Что касается программирования WAP-сервисов, то оно сводится к уже знакомому нам описанию HTML-страниц. Только роль HTML для WAP играет WML, уже упоминавшийся ранее. Чтобы создавать действительно динамические WML-страницы, опять же, не отступая от знакомых нам правил web-программирования, можно воспользоваться как CGI, так и сервлетами и JSP. Наиболее часто сегодня используют Java-решения (servlet/JSP), так как, поскольку WML — это XML-совместимый язык разметки, а Java без всяких сомнений лидирует по количеству и качеству существующих под нее инструментов для работы с XML. Помимо этого множество встроенных библиотек для обработки графических объектов позволяет без особого труда конвертировать обычные изображения в изображения для мобильных беспроводных устройств. И это далеко не все достоинства Java-решений.
Помимо WML, с помощью которого мы не в состоянии на стороне клиента проверять введенные данные, генерировать сообщения в виде диалоговых окон, был разработан еще один XML-совместимый язык — XMLScript. Если мы провели аналогию HTML с WML, то XMLScript будет соответствовать JavaScript. Нужно ли говорить, что его возможности безмерно ограничены по сравнению с JavaScript?
Прежде чем приступить к рассмотрению WML, давайте для начала взглянем в сторону структуры стека протоколов WAP. На нижеследующей схеме приведен этот стек:

WAE (Wireless Application Environment), WSE (Wireless Session Protocol), WTP (Wireless Transaction Protocol), WTLS (Wireless Transport Layer Security), WDP (Wireless Datagram Protocol).
На нижнем уровне схемы приведено несколько примеров протоколов физического уровня (CDMA — Code Division Multiple Access; CDPD — Cellular Digital Packet Data). Фактически каждому из уровней приведенного WAP-стека можно сопоставить уровень/протокол из стека протоколов TCP/IP.

WML
Итак, WML (Wireless Markup Language) — это XML-совместимый язык разметки. Его спецификация была разработана специально для использования на таких устройствах, как мобильные телефоны, у которых возможности по отображению данных весьма ограничены (небольшие монохромные дисплеи и пр.). С помощью этого языка без труда можно создавать страницы, содержащие текст, меню, изображения, ссылки и пр. Благодаря тому, что WML несколько напоминает HTML, думаю, для многих не составит труда понять принцип его работы.
Как правило, все страницы, особенно начальные, содержат так называемые меню выбора, которые представляют собой обычный набор обычно центрированных строчек текста. Текущий элемент обычно выделяется инвертированным цветом фона и шрифта, а также чертой подчеркивания. Каждый набор таких элементов меню принято называть картами (card). Возьмем для примера самый простой пример карточки:
<?xml version = "1.0"?>
<wml>
<card id = "card_1" title = "Simple Card">
<p align="center">
Hello World!
</p>
</card>
</wml>

Как и любой другой XML-документ, WML-страничка должна начинаться со строчки, определяющей версию XML (в нашем случае 1.0). Далее должно следовать определение DTD, которое нужно было бы указать как внешнюю сущность, но мы опустим этот момент. Нам не так важна проверка на валидность нашего документа, как научиться писать WML-страницы. Внутри корневого элемента <wml></wml> мы вправе определить столько карточек, сколько нам нужно. Пока нам достаточно всего лишь одной. У нашей карточки (<card></card>) мы задали атрибуты id и title. Первый определяет идентификатор, по которому в дальнейшем мы сможем ссылаться на эту карточку, а второй задает ее заголовок. Заголовок представляет собой текст, взятый в рамку, который отображается в самом верху карточки.
Текст внутри карты мы задали в новом параграфе (<p></p>) и выровняли его по центру атрибутом align. Этот элемент параграфа практически идентичен тому, что используется в HTML.
Для нашего следующего примера рассмотрим еще несколько элементов WML. Для того чтобы создать ссылку на карточку, используется все тот же элемент <a></a> (anchor), который аналогичен элементу <anchor></anchor>. Например:
<a title = "The Beatles" href = "#beatles">The Beatles</a>
или
<anchor>The Beatles <go href = "#beatles"/></anchor>

Для перехода на новую строчку используется знакомый элемент <br/>. Для вставки изображений — элемент <img/>:
<img src = "aphexTwin.wbmp" alt = "Aphex Twin photo"/>
Как уже было замечено, чтобы организовать целый WAP-сайт, достаточно всего одного WML-документа, содержащего определенное количество карточек.
Приведем пример связанной карточной системы в WML-документе:
<?xml version = "1.0"?>
<wml>
<card id = "menu" title = "Music">
<p align = "center">
<a title = "Aphex Twin" href = "#aphex">Aphex Twin</a><br/>
<a title = "Plaid" href = "#plaid">Plaid</a><br/>
<a title = "The Beatles" href = "#beatles ">The Beatles</a><br/>
</p>
</card>
<card id = "aphex" title = "Aphex Twin">
<p>
<img src = "aphexTwin.wbmp" alt = "Aphex Twin"/><br/>
... something about Aphex Twin...
<a title = "Main menu " href = "#menu">Main menu</a>
</p>
</card>
<card id = "plaid" title = "Plaid">
<p>
<img src = "plaid.wbmp" alt = "Plaid"/><br/>
... something about Plaid ...
<a title = "Main menu " href = "#menu">Main menu</a>
</p>
</card>
<card id = "beatles" title = "The Beatles">
<p>
<img src = "theBeatles.wbmp" alt = "The Beatles"/><br/>
... something about The Beatles...
<a title = "Main menu " href = "#menu">Main menu</a>
</p>
</card>
</wml>

Приведенный выше код — это коллекция связанных между собой карточек. Вся эта конструкция представляет собой список из трех представителей музыкальной индустрии, на карточку каждого из которых можно попасть из главного меню. Все используемые элементы были рассмотрены нами выше, поэтому все должно быть понятно.
Касательно изображений. Изображения, предназначенные для отображения на беспроводных устройствах, имеют свой определенный формат (WBMP, Wireless Bitmap), специально спроектированный для небольших монохромных экранов. Для преобразования обычных изображений в этот формат существует множество утилит. Помимо этого подобные преобразования можно производить как стандартными средствами Java (для этого нужно знать спецификацию этого формата), так и с помощью специальных библиотек классов.

Если вы захотите организовать на своем web-сервере WAP-ресурс, то для этого нужно всего лишь добавить несколько MIME-типов. Вот их список:
MIME-тип                        Расширение
text/vnd.wap.wml                         .wml
application/vnd.wap.wmlc             .wmlc
text/vnd.wap.wmlscript                 .wmls
application/vnd.wap.wmlscriptc     .wmlsc
image/vnd.wap.wbmp                   .wbmp

Прописав эти MIME-типы, ваш web-сервер при запросе соответствующих страниц будет возвращать валидный MIME-тип, который ожидается WAP-браузером.
Сегодня существует огромное количество инструментов для создания WAP-сайтов. Большинство из них представляет собой обычный текстовый редактор с расширенными функциями и возможностью просмотра внешнего вида сайта в эмуляторе WAP-браузера мобильного телефона. Подобный эмулятор можно скачать с сайтов многих производителей мобильных телефонов. Имея лишь подобный эмулятор, web-сервер и обычный текстовый редактор, вы сможете в домашних условиях создавать и тестировать свои WAP-ресурсы. Остается прояснить ситуацию с WAP в Беларуси.
К сожалению, в нашей стране эта услуга не пользуется большим спросом у владельцев мобильных телефонов. В основном из-за слишком высоких расценок на эту услугу у наших мобильных операторов. Однако во многих странах эта технология имеет огромную популярность. На базе WAP создаются информационные ресурсы с последними новостями с биржевых рынков, интернет-магазины, развлекательные ресурсы и пр.

Offline

#4  12.02.06 15:06

Re: [WML] Создание WAP-сайта

Фиг знает откуда:



Эта статья была взята отсюда и переведена мною. Для создания полноценного WAP сайта ее явно не достаточно, но для простенького вполне сойдет. В самом низу я добавил необходимые настройки для WEB сервера Apache, применительно к Эклипсу.



    WML (Wireless Markup Language) это новый сетевой язык для создания сайтов для мобильных устройств. За несколько последних месяцев новые WAP (Wireless Applications Protocol) телефоны стали чрезвычайно популярны и многие крупные сайты создали специальные «мобильные» версии своих сайтов. Многие люди предпологают, что в течении нескольких лет, WAP станут очень популярны и е-коммерция станет широко доступна через мобильные телефоны.

Почему я должен использовать WML?

Вы, конечно, можете не иметь срочных планов по созданию WAP версии вашего сайта, но не плохая идея быть в курсе новых технологий. Все что вам нужно сделать – это маленький сайт (хоть из одной страницы) который расскажет людям немного о вашей компании. В будущем вы сможете разработать сайт с такими функциями, как e-mail и информацией для прямого доступа людей через их мобильные телефоны.
У меня нет WAP телефона!
Чтобы создать WAP сайт вам не нужен WAP телефон. Можно взять WAP симулятор для PC. Это программа, которая заменить вам WAP телефон компьютером. С ее помощью вы сможете просматривать WAP ресурсы на вашем PC. Вы можете скачасть очень хороший симулятор с YourWAP.com
Чем WAP сайты отличаются от обычных?
WAP сайты не такие как как обычные сайты. Сайты написаные на WML черно-белые (уже не только*), очень ограничены и предназначены для очень маленьких экранов (опять же, уже не только*). По этому к создания WAP сайта нужно подходить очень аккуратно.

И что теперь?

Просто читайте дальше, чтобы научиться создавать WAP сайты используя WML. Очень хорошо, если вы знаете HTML так как WML очень похож на него (в принципе WML это просто вариант XML, другого сетевого языка).

Создаем ваш первый WAP сайт!

Итак, переходем прямо к созданию WAP сайта. Заметьте, навыки работы с HTML очень полезны и еще вы должны иметь WAP телефон или WAP симулятор чтобы просматривать ваш сайт.

Ищем WML хостинг.

К сожалению WML может работать не на всех хостингах. Для работы WML в настройках вэб сервера должны быть сделаны некоторые изменения. Если выш хостинг не может предоставить вам таких услуг, вы можете попробовать WAPHosts.net. Они могут предоставить вам сервер поддерживающий WML.

Описываем WML документ.

Когда вы создаете WML документ все что вам нужно – это блокнот (notepad), как и для HTML. Первое, что вы должны написать - это:

<?xml version="1.0"?><!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"><wml>

это говорит телефону что он обрабатывает WML документ и какой WML стандарт использует.

Карты.

Вместо страниц WAP сайты используют карты (cards). Это то, что отображается на экране в данное конкретное время, как и страницы. В каждый WML документ может быть включено несколько карт. Чтобы описать карту напишите следующее:

<card id="index" title="My WAP Site" newcontext="true">

Это создаст карту с идентификатором “index” (используется для ссылок) и отобразит текст:

My WAP Site

В верху экрана (заголовок).

Закрытие тэгов.

В отличии от HTML, очень важно закрывать WML тэги. Если этого не делать, то страница работать не будет. Вы должны закрыть оба <card> и <wml> тэга:

</card>
</wml>

Теперь я покажу вам как вставить текст и как его отформатировать.

<p> тэг

Как и в HTML <p> тэг указывает где начинается и заканчивается параграф. В отличии от HTML, весть текст а WML должен содержаться внутри этих тэгов. Не разрешается вставлять эти тэги друг в друга. Еще одна важная вещь, которую нужно запомнить о WML , это то, что в отличии от HTML, где браузер отображает страницы даже с не правильным кодом, WML браузер отвергнет страницу с кодом, которого он не понимает.

Как и в HTML вы используете тэги так:

<p>
information
</p>

Выравнивание текста.

Выравнивание текста в WML практически такое же, как и в HTML. Все выравнивания должны быть сделаны используя следующие теги <p>:

По центру:
<p align="center">

Справа:
<p align="right">

Слева:
<p align="left">


<br/> тэг.

В WML (как говорилось раньше) все тэги должны быть закрыты. Это вызывает проблемы, когда используются старые HTML тэги (типа <br>) у которых нет закрывающего тэга. Чтобы с этим справиться, некоторые тэги должны иметь “/” в конце. Например:

<br/>

Это, как и в HTML начнет новую строку.

Текст.

В WML нет тэгов для шрифтов (так как текст отображается стандартным шрифтом мобилы черным цветом). Чтобы отобразить текст, все, что вам нужно сделать, это написать его внутри <p> и </p> тэгов. Вот пример полного 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="index" title="My WAP Site" newcontext="true">
<p align="center">
Welcome to my new WAP site. You can view this on your mobile phone anywhere in the world!<br/>
It is amazing!
</p>
</card>
</wml>

Гиперссылки + Картинки

Теперь я покажу как сделать все лучше, добавлением страниц (карт), ссылок на них (и на другие сайты) и как добавить картинки на ващ сайт.

Дополнительные карты (странички).

У WAP сайтов карты вместо страниц. В принципе, это то же, что и страницы, за исключением того, что они все могут быть записаны на один файл. Чтобы добавить карту, нужно добавить еще один тэг <card> с отличным от других идентификатором. Например:

<card title="About Me" id="about">
information
</card>

будет добавлен под предыдущую карту но до тэга </wml>.

Ссылки.

Есть три способа ссылки на другой WAP сайт, файл или карту. Как и в HTML это может быть прямой путь к файлу, либо относительная ссылка.

Для ссылки на другой WAP сайт используйте следующее:

<a href="http://gowansnet.waphosts.net/">Gowansnet</a>

Для ссылки на файл на вашем сайте используйте:

<a href="links.wml">My Links</a>

и для ссылки на другую карту в этой же странице:

<a href="#about">About Me</a>

Картинки.

К сожалению, так как WAP телефоны имеют только монохромные экраны(повторюсь, уже нет*), картинки не очень хорошо работают на WML страницах. К тому же они используют свой собственный формат: WBMP. Когда вы создаете картинку для своего сайта, вам прийдется делать ее маленькой (экраны мобильных телефонов примерно100x50 точек).


Картинки в WML вставляются с помощью <img> тэга, как и в HTML:

<img src="logo.wbmp" alt="Logo" />

Опять же, как вы видите, “/” был добавлен в конец тэга <img>, так как у него нет закрывающего тэга. Так же важно включать “alt” текст, так как он будет отображаться во время загрузки самой картинки.

Пример сайта.

Ниже приведен пример WML кода для маленького WAP сайта. Он состоит из двух карт, картинки, и ссылки на другой сайт:

<?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="index" title="My WAP Site" newcontext="true">
<p align="center">
Welcome to my new WAP site. You can view this on your mobile phone anywhere in the world!<br/>
<img src="logo.wbmp" src="Logo" />
</p>
<p>
Here are some links:<br/>
<a href="#about">About Me</a><br/>
<a href="http://gowansnet.waphosts.net/">Gowansnet</a>
</p>
</card>
<card id="about" title="About Me">
<p>Here is some informatio about me. You can't write too much in here, though as there is not much space<br/>
You can scroll down the screen, of course.
</p>
<p align="center">
<a href="#index">Back</a>
</p>
</card>
</wml>


Примечание: На данный момент уже достаточно много мобильных устройств с цветным дисплеем и возможностью отображать картинки не только WBMP формата. Большинство таких устройств умеют обрабатывать GIF и JPG файлы.


Для того, чтобы Apache правильно отдавал Эклипсу мелодии, его нужно этому научить. Делается это двумя способами. Какой вам подходит зависит от того, где вы размещаете свой сайт. Если на чьем-то хостинге, то вам подойдет первый вариант, если на своем сервере (как я), то второй.


Первый вариант: Заключается в том, что Apache (если так настроен хостинговой компанией) ищет в каталоге пользователя файл .htaccess и чтитает из него специфические пользовательские настройки. Короче говоря, вам надо создать файл .htaccess с таким содержанием:
AddType image/gif gif
AddType image/jpeg jpeg jpg jpe
AddType image/png png
AddType image/vnd.wap.wbmp wbmp
AddType application/x-pmd pmd
AddType audio/vnd.digiplug.tri3 tri3
AddType text/x-vCalendar vcf
AddType text/x-vCard vcs

Это позволит вам выкладывать на своем сайте мелодии в форматах pmd и digiplug (если вы не знаете что это, то вам это и не понадобится), а так же контакты (записи телефонной книги) и данные для календаря. Если не работает, то замените AddType на Header.

Второй способ: Нужно просто добавить эти строки:
image/gif gif
image/jpeg jpeg jpg jpe
image/png png
image/vnd.wap.wbmp wbmp
application/x-pmd pmd
audio/vnd.digiplug.tri3 tri3
text/x-vCalendar vcf
text/x-vCard vcs

в файл mime.types в каталоге с конфигурационными файлами Apache.
Ну и не забуддте перезапустить Apache.

ЗЫ:   Если Вы что-то знаете о телефонах Trium Aria@ или Eclipse, чего мало кто знает, пишите мне на antonav@mail.ru - опубликуем (да и Ваше имя засветиться). :)

Offline

#5  13.02.06 01:40

Re: [WML] Создание WAP-сайта

Пасиба. Щас почитаю...

Offline

Программирование и БД » [WML] Создание WAP-сайта 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.370 сек.
Выполнено 14 запросов.