Содержание


Соединение XML и Java с XML-компонентами (XMLBeans) в коммерческой деятельности

Комбинирование XML, Java и SOA для решения реальных коммерческих задач

Архитекторы компаний, столкнувшись с постоянным повышением уровня сложности программного обеспечения, сконцентрировались на SOA как на способе преодоления проблемы интеграции систем. Изначально SOA нацелена на улучшение результатов в бизнесе путем расширения сфер взаимодействия предпринимательства и информационных технологий (IT).

SOA использует парадигму запросов-ответов как для синхронных, так и для асинхронных приложений. При таком подходе логика и функционал бизнес-приложений рассматриваются как сервис. Разработчики прикладных программ или системные интеграторы могут строить приложения, соединяя один или более сервисов, не вникая в реализацию этих сервисов. Такой метод позволяет вам интегрировать практически все ваши IT-ресурсы, включая разрозненные данные и ранее несовместимые системы.

В парадигме SOA провайдеры и заказчики контактируют посредством сообщений. Интерфейс обмена сообщениями не должен зависеть от платформы и языка. Поэтому сообщения часто строятся с использованием XML-документов, которые соответствуют XML-схеме. Безусловно, данные приложений часто тоже хранятся в формате XML.

XML обеспечивает базовый синтаксис, который может быть использован для обмена информацией между различными типами компьютеров, различными прикладными программами и различными организациями без необходимости проходить через несколько уровней преобразования. XML важен, поскольку он поддерживает усилия по интеграции корпоративных приложений, обеспечивая наличие общей стандартизированной платформы, на которой строится инфраструктура интеграции.

Почему же XMLBeans?

XMLBeans позволяют использовать язык программирования Java™в сочетании с XML. Java является объектно-ориентированным языком, основанным на открытых общепринятых стандартах. Он независим от платформы, устойчив к сбоям и надежен. Благодаря этим характеристикам он был широко принят и внедрен во многих отраслях, включая индустрию развлечений. Тем не менее, язык программирования Java несовместим с XML. Применение XMLBeans является лучшим способом решения этой проблемы.

XMLBeans используется для привязки данных в формате XML. XMLBeans позволяет приложениям Java максимально использовать преимущества XML. XMLBeans использует XML-схему для компиляции Java-интерфейсов и классов, которые можно применять для доступа и модификации данных экземпляра XML . Применяя данную технологию, вы можете скомпилировать XML-схему в набор классов Java, которые могут:

  • Использовать XMLBeans для всех существующих типов схем
  • Обращаться к данным XML на любом необходимом уровне

XMLBeans обеспечивают следующие API для привязки данных:

  • XmlObject: При создании классов Java на основе XML-схемы классы Java выводятся из API XmlObject.
  • XmlCursor: API XmlCursor обеспечивает низкоуровневый доступ к XML Infoset. Оно показывает положение курсора в экземпляре XML.
  • SchemaType: Объектная модель XML-схемы для лежащей в основе мета-информации.

Компилятор XMLBeans создаёт отображение объекта XML-схемы. Отображение объекта представляет собой набор типичных Java–классов и интерфейсов, которые представляют структуру и ограничения, накладываемые схемой. При создании Java-классов и интерфейсов экземпляр документа XML, соответствующий схеме, связывается с ними. Процесс связывания включает в себя использование API XMLBeans для обращения к данным, содержащимся в фактическом экземпляре документа XML, объектно-ориентированным способом.

Мощность XMLBeans позволит вам не писать код целиком, чтобы работать с XML. Вместо этого вы можете просто использовать XML в своих приложениях. Без XMLBeans вам пришлось бы писать код, чтобы использовать все части схемы. Подумайте об этом: XMLBeans сам создает классы для схемы. Представьте количество отношений "один к одному", "один ко многими" и "многие ко многим", с которыми вам надо было бы управляться. А использовать XMLBeans также легко, как 1-2-3:

  1. Установите XMLBeans.
  2. Скомпилируйте свою схему для создания файла Java Archive (JAR).
  3. Напишите код для привязывания экземпляра XML к Java-типам, представляющим вашу схему. Листинг 1 содержит простой пример:
Листинг 1. XMLBeans легок и прост в применении
        File xmlEntertainFile = new File("c:\entertain.xml"); 
     // Привяжите экземпляр к созданным типам XMLBeans. 
        EntertainDocument entDoc = 
          EntertainDocument.Factory.parse(xmlEntertainFile); 
     // Получите и выведите на печать части экземпляра XML. 
        Entertain ent = entDoc.getEntertain(); 
        Entertain[] entArray = ent.getEntertainArray(); 
        for (int i = 0; i < entArray.length; i++) 
          { 
               System.out.println(entArray[i]);
          }

Мир развлечений

Итак, как же это работает в реальной жизни? Развитие вычислительных мощностей приобрело интересный поворот. С распространением SOA большая часть вычислительных мощностей переместилась от привычной звезднообразной модели, в основе которой лежат сверхмощные серверы, к одноранговой модели, в которой периферия обладает большей общей вычислительной мощностью, чем серверы в центре. Серверы в центре выполняют роль сетевых узлов. С распространением Интернета и увеличением скорости Интернет-соединений индустрия развлечений становится цифровой. Большинство новой продукции (если не всей целиком) продается и будет продаваться в цифровом формате.

Поверите ли вы или нет, но именно индустрия развлечений была одной из первых, кто использовал это изменение в вычислительной парадигме вместе с бесславным Napster. Индустрия развлечений продолжает удерживать лидирующие позиции в этой сфере, что продемонстрировала конференция, проведенная не так давно компанией South by Southwest (SXSW, Inc.). SXSW - частная компания, базирующаяся в Остине, Техас (Austin, Texas). Они организуют и проводят конференции и фестивали для профессионалов развлекательной индустрии и связанной с этим медиа индустрии. Одна из недавно проведенных ими конференций (11-14 марта, 2006 г.) была посвящена инструментам, применяемым создателями художественных фильмов и разработчиками цифровых технологий, для повышения продуктивности и обеспечения дальнейшего развития киноиндустрии. Одна из тем для обсуждения за круглым столом непосредственно затрагивала применение XML в данной области: Надежда на XML во всех даже неподходящих местах. Как указывалось в материалах конференции, "Каждый хочет делать с XML всё."

Киноиндустрия

Киноиндустрия, в частности, является областью, которая с большим энтузиазмом использует XML. В последнее время киноиндустрия, сделавшая значительный шаг вперед в области стандартизации своего подхода к монтажу и распространению цифровой продукции в театральной и других областях применения, включила в этот процесс использование XML. В июле 2005 года при попытке перевода кинематографа на цифровую основу группа компании Digital Cinema Initiatives (DCI), работающая в союзе с членами комитета стандартов Society of Motion Picture and Television Engineers (SMPTE), опубликовала системную спецификацию для цифрового кино, одобренную большинством крупнейших киностудий. В стандарты включено использование XML в таких областях как монтаж, формат файла, частота смены кадров, распределение временных интервалов, списки воспроизведения композиций и упаковочные листы.

На сегодняшний день множество новых приложений, ориентированных на применение в киноиндустрии, входят в активное пользование. Примером тому служит получившее множество наград ПО компании Apple под названием Final Cut Pro, которая широко применяет открытый стандартизированный формат обмена данными XML (XML Interchange Format). В Final Cut Pro, формат обмена данными XML (XML Interchange Format) описывает каждый аспект проекта. Начиная с клипс, карманов, цепей, заканчивая монтажом, наплывами, созданием эффектов, включая цветокоррекцию и создание базовых кадров, Final Cut Pro открывает доступ к деликатным вопросам кинопроизводства для программистов и разработчиков. Использование XML в Final Cut Pro предоставляет открытый, понятный, нешифрованный текст, который легко читать и изменять при помощи целого ряда средств. Применение формата обмена данными XML (XML Interchange Format) означает, что пользователи Final Cut Pro могут обмениваться всесторонней информацией, касающейся их проектов, при помощи любого приложения или системы, поддерживающей XML, включая системы управления базами данных, сетевые серверы, инструменты подготовки Web-страниц на языке HTML и графические приложения. Это также означает, что приложения Java могут легко обратиться к этим данным при помощи XMLBeans. Сейчас, благодаря XMLBeans, разработчики получили возможность разрабатывать Java-приложения, которые полностью интегрируются с Final Cut Pro или создают специализированные, доработанные кондуиты (журналы), которые помогают значительно сэкономить время и деньги.

XMLBeans и распределение отрасли

Безусловно, вслед за проблемой окончательного монтажа и доработки встает вопрос о размещении продукции, без которого невозможно получение прибыли. Интернет через ряд агентов, как например Amazon.com, стал важным звеном в цепи размещения различных форм продукции средств массовой информации, как то фильмов на DVD, музыкальных носителей всех типов, и, конечно, книг. Amazon.com, хоть обычно считалось продавцом книг, фактически является одним из звеньев общей сети размещения товаров в индустрии развлечений. Amazon Web-сервисы (AWS), состоящие из протоколов на XML, предоставляет все возможности для прямого доступа к технологической платформе Amazon и данным на выпускаемые товары: от поиска информации о наличии товаров до добавления товара к закупочной корзине, улучшения производительности вашего приложения или добавления улучшенной поисковой способности. Используя AWS, вы можете получить прямой доступ к мощной платформе Amazon для того, чтобы запустить и улучшить ваши приложения.

Amazon.com является не только Internet источником распределения для индустрии развлечений. Объекты Netflix.com также являются частью распределительной сети. Netflix использует каналы Really Simple Syndication (RSS) для того, чтобы обеспечить доступ к контенту. Разработчики могут применять каналы RSS для создания новых интересных путей для отображения информации, предоставляемой Netflix. Конечно же, каналы RSS не сводятся только к Netflix. Вы обнаружите такие разрешенные XML-документы на многих сайтах, начиная от информационных до контент-провайдеров.

Как вы можете предположить, в дополнение ко всем преимуществам, которые обеспечивает данный подход, описанные новшества не могут обойти стороной проблемы, связанные с Digital Rights Management (DRM) и пиратством. Поскольку открываются новые каналы сбыта, создатели кинопродукции (студии, независимые киностудии т. п.) должны иметь возможность для взаимодействия со всеми сторонами, которые заинтересованы в приобретении их продукции, включая театры, телевизионные станции, студии проката и студии, взимающие плату за каждый просмотр. В настоящее время несколько представителей киноиндустрии находятся в состоянии переговоров с агентами электронной сети сбыта продукции, пытаясь найти прибыльные и безопасные каналы для размещения своей продукции с помощью одного из новейших методов, требующих минимальных затрат: сети Internet. Такое взаимодействие не может не вызывать проблем в области DRM.

Ключом к широкому применению XMLBeans является создание открытых XML-стандартов, принятых в индустрии развлечений. (См. Ресурсы для получения более подробной информации относительно XML-стандартов, работающих в данной индустрии.) Однако если вы заняты технологическими разработками в данной области, если вы пользуетесь стандартом XML для написания программ (даже если это ваша собственная XML-схема), вы можете применить XMLBeans для усиления эффективности. Пользуясь XML (стандартный или нет), вы можете применить XMLBeans для ускорения ваших разработок, для уменьшения кода, который нуждается в проверке или поддержке, и в целом, для создания нежестких соединений и более мощных сервисных ориентировок. Поскольку применение стандартов XML всплывает в связи с DRM, вы также можете применять XMLBeans для более эффективной работы со стандартом. Среди всех технических преимуществ использования XML-компонентов, описанных в этой и других статьях, вы обнаружите последовательный подход к приложению стандарта DRM, что поможет упростить ваши развёртывания и обмен правовой информацией с вашими партнерами, дистрибьютерами, покупателями. Одним из новейших стандартов в области DRM является специализированный язык разметки для правовых метаданных (Open Digital Rights Language (ODRL)). Вы можете загрузить XML-схему с сайта ODRL (см. Ресурсы).

Для того, чтобы загрузить XML-схему с сайта ODRL, выполните следующие шаги:

  1. Загрузите и установите XMLBeans, а также контейнер для развёртывания кода. (См. Ресурсы на предмет статей, объясняющих выполнение данной процедуры.)
  2. Найдите Expression Language Schema и Data Dictionary Schema на сайте ODRL, затем сохраните файлы в созданном вами контейнере.
  3. Обратитесь к Web-сайту XMLBeans и создайте XMLBeans из файла XML-схемы. Выберите опцию для сохранения исходных файлов Java. Созданный файл xmlTypes.jar содержит классы, которые понадобятся для работы с ODRL и XMLBeans.

Применение XMLBeans имеет другие преимущества. На сегодняшнем рынке XMLBeans является, вероятно, самой зрелой технологией XML для привязывания объектов со свободным доступом. Кроме того, XMLBeans определенно является тем инструментом, которое нужно принять во внимание при работе с XML. Если принять во внимание быстрые темпы, которыми происходит распространение XML в индустрии развлечений, становятся очевидными преимущества использования XMLBeans, делающее доступным XML-контент для приложений на языке Java к документам, созданным на основе XML.

Краткое изложение

В индустрии развлечений XML применяется на многих уровнях и для множества приложений. Поскольку язык программирования Java является мировым стандартом среди объектно-ориентированных языков программирования, а XML был выбран в качестве формата данных, то XMLBeans вскоре станет признанным инструментом Java для привязывания объектов. Его способность создавать классы для разработки Java поможет избежать дублирования, поможет сэкономить время и деньги. Вместе они представляют эффективное средство для разработки приложений потребителя и продавца.


Ресурсы для скачивания


Похожие темы

  • Оригинал статьи Merge XML and Java with XMLBeans in commerce.
  • Бизнес стратегии и архитектуры Web-сервисов (Майк Кларк (Mike Clark), Питер Флетчер (Peter Fletcher), Джефри Дж. Хэнсон (Jeffrey J. Hanson) и др.; A-Press, 2003): Learn to apply XML techniques to different business problems in this book of interesting articles. (Этот сборник интересных статей научит вас применять технологии XML для решения различных коммерческих задач.)
  • Web-сервисы и индустрия недвижимости (Кунал Миттал (Kunal Mittal), Tect, 2002): Dive into a detailed use case of how Web services can help the real estate industry. (Подробный анализ случаев применения Web-сервисов в индустрии недвижимости.) Книга содержит примеры кодов Web-сервисов.
  • Стандарты в индустрии недвижимости (Standards in the Real Estate Industry): Прочитайте статью Кунала Миттала (Kunal Mittal), размещенную на сайте XML Journal.
  • ODRL: Получите более подробную информацию о ODRL на сайте Oasis Cover Pages.
  • Развёртывание приложений SOA в Apache Geronimo при помощи XMLBeans (Кунал Миттал (Kunal Mittal), developerWorks, май, 2006 г.)/
  • XML-стандарты: Получите информацию о различных XML-стандартах для применения в индустрии развлечений на сайтах World Wide Web Consortium (W3C) и Entertainment Sector.
  • Системная спецификация цифрового кино: Ознакомьтесь с информацией о стандарте Look at the Digital Cinema Initiatives, LLC (DCI), введенном в действие в июле 2005.
  • Сайт ODRL Initiative: Получите более подробную информацию об открытом стандарте Open Digital Rights Language (ODRL) Initiative для Digital Rights Management expression language.
  • XMLBeans: Для получения более подробной информации и алгоритма загрузки копии XMLBeans обратитесь на сайт Apache XML Project.
  • IBM XML 1.1 сертификация: Получите информацию о том, как вы можете стать сертифицированным разработчиком IBM в XML 1.1 и смежных технологиях.
static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=XML, Open source, Технология Java, SOA и web-сервисы
ArticleID=169803
ArticleTitle=Соединение XML и Java с XML-компонентами (XMLBeans) в коммерческой деятельности
publish-date=09052006