Автоматическая генерация WSDL апплетов
В настоящей статье описывается один из проектов Inetique
в области Java Card. Проект был представлен на международный
конкурс SIMagine 2003. Он прошел несколько стадий отбора
и был оторбран для участия в финале. Мы представляли
его международному жюри на 3GSM Congress в Каннах в
феврале 2003 года. Всего же в конкурсе приняло участие
146 проектов из более чем 30 стран. Наш проект
был единственным проектом из России, прошедшим в финал,
и он завоевал Best on Technology Award.
Ниже вы можете познакомиться с нашим проектом, который
предназначен для использования с SIM Toolkit. Да, именно
SIM карты, которые используются в мобильных телефонах
также могут содержать виртуальную машину Java и для
их программирования используется таже самая спецификация
Java Card.
Что это дает? Оператор получает возможность персонализации
SIM карт для своих пользователей. То есть к имеющемуся
на картах сервису можно добавить новые приложения. Именно
процесс добавления приложений (персонализации) и рассматривается
в данном проекте.
Мы предлагаем программную компоненту, которая автоматически
создает Java Card апплеты для SIM toolkit. При этом
в качестве исходной информации мы используем Web сервисы.
Web сервисы на сегодняшний день представляют собой стандартный
способ публикации информации о доступных функциях (сервисах),
предоставляемых каких-либо предприятием (сайтом). С
точки зрения пользователя каждый Web сервис представляет
собой файл в формате WSDL (Web Services Definition Language).
Это XML файл, который содержит всю необходимую информацию
о доступе к конкретному сервису: URL для посылки запроса,
имя функции, входные и выходные параметры.
Разработанное нами приложение по исходному WSDL файлу
может автоматически построить Java Card апплет (то есть
выдать полный исходный код на Java), который будет осуществлять
доступ к данному сервису.
В общем случае реализуемая схема проиллюстрирована
на следующем рисунке. В классическом случае, клиент,
который использует Web сервис посылает XML запрос (текст
в стандарте SOAP – Simple Object Access Protocol) Web
сервису. Web сервис обрабатывает запрос и возвращает
результат также в формате SOAP. Так работает, например,
.NET
Применительно к Java Card: автоматически созданный
апплет будет запрашивать исходные данные у пользователя,
посылать их в виде SMS некоторому приложению (OTA proxy).
Proxy собирает SMS, формирует стандартный SOAP запрос
к Web сервису, выполняет его, разбирает полученный ответ
и отправляет его в виде SMS обратно апплету.
|