Разработка Web-приложений в Oracle Forms

Введение в Oracle Forms Developer

Показывать лекцию целиком

Цель лекции: ознакомить слушателя с основными продуктами Oracle и составляющими компонентами Oracle AS.

Корпорация Oracle является крупнейшим в мире поставщиком корпоративного программного обеспечения и предлагает полный комплекс технологий для построения ИТ-инфраструктуры и управления современным предприятием: семейство базовых программных технологий Oracle10g, готовое решение для коллективной работы Oracle Collaboration Suite, полнофункциональный комплекс бизнес-приложений Oracle E-Business Suite и интеграционное решение для управления данными Oracle Data Hub. Корпорация предоставляет свои продукты и услуги в области консалтинга, обучения и технической поддержки более чем в 150 странах мира. Официальный сайт корпорации – http://www.oracle.com.

На сегодняшний день СУБД Oracle – это интегрированное программное обеспечение для сети распределенных вычислений Grid. Для реализации сложных комплексных решений имеется широкий набор программных продуктов, который можно разбить на несколько разделов по их функциональному назначению.

Oracle Application Server

Oracle Application Server (сервер приложений) – это первая в мире основанная на стандартах GRID, интегрированная программно-прикладная платформа, которая позволяет упростить управление приложениями, выполняемыми в распределенной вычислительной среде.

Оптимизированная для Grid-вычислений платформа Oracle AS позволяет снизить расходы на приобретение техники. Сервер приложений Oracle AS дает возможность организациям и предприятиям любого масштаба возможность оперативно реагировать на меняющиеся требования рынка. Oracle Application Server обеспечивает полную поддержку следующих технологий и возможностей в одном продукте:

  • J2EE;
  • Распределенные вычисления;
  • Корпоративные порталы (Portal);
  • Web-Cache – высокоскоростное веб-кеширование;
  • Разработка и интеграция бизнес-приложений (Business Intelligence);
  • Rapid Development – быстрая разработка и внедрение приложений;
  • Wireless – поддержка беспроводных технологий;
  • Веб-сервисы.
  • Помимо перечисленных возможностей в состав Oracle Application Server входит полный набор инструментариев и инфраструктуры для обеспечения безопасности на всех уровнях разработки и развертывания приложения. Oracle Application Server позволяет создавать приложения, используя различные языки и технологии (табл. 1.1).

    Технологии и языки, поддерживаемые Oracle AS
    Технология/Язык
    Java and J2EE Java Server Pages (JSP) v. 1.2
    Java Servlets v. 2.3
    Enterprise Java Beans (EJB) v.2.0
    Java Database Connectivity (JDBC) v. 2.0 Extensions
    Java Transaction API (JTA) v. 1.0
    Java Naming and Directory Interface (JNDI) v. 1.2
    Java Message Service (JMS) v.1.0.2b
    Java Authentication and Authorization
    Service (JAAS) v.1.0
    J2EE Connector Architecture v. 1.0
    Java API for XML Parsing (JAXP) v.1.1
    Java Mail v. 1.0
    XML XML v. 1.0
    XML Namespaces v. 1.0
    Document Object Model (DOM) v.1.0/2.0
    Extensible Stylesheet Language
    Transformations (XSLT) v. 1.0
    XML Schemas v.1.0
    Simple API for XML (SAX) v.1.0/2.0 + Extensions
    XML Path Language (XPath) v. 1.0
    XSQL
    Internet Data Access Presentation
    PL/SQL PL/SQL Server Pages v. 9.0.4
    PL/SQL Web Toolkit v. 9.0.4
    Oracle Application Server Forms Services v. 9.0.4
    Web services Web Services Description Language (WSDL) v. 1.1
    Universal Description, Discovery, and Integration (UDDI) v. 2.0
    Simple Object Access Protocol (SOAP) v. 1.1

    Применение оптимизированного под Grid-вычисления сервера приложений существенно снижает затраты на аппаратные средства и упрощает администрирование, позволяя разворачивать и управлять приложениями, разработанными в Oracle Developer Suite, на одном прикладном сервере. Модуль Oracle Forms Services, который мы будем рассматривать чуть позже, также является частью Oracle AS и позволяет развертывать приложения, написанные в Forms Developer в Web. Ниже перечислены основные сервисы сервера приложений.

  • Коммуникационные сервисы (Communication services).
  • Сервисы выполнения приложения (Application Runtime Services).
  • Системные сервисы (System Services).
  • Управление сервисами (Management Services).
  • Сервисы соединения (Connectivity services).
  • Решения (Solutions).
  • В таблице 1.2 представлены основные компоненты и ассоциированные с ними решения (Solutions) Oracle Application Server.

    Компоненты Oracle AS
    Решение Компонент
    J2EE и интернет-приложения Oracle HTTP Server
    Oracle AS Containers for JEE
    Oracle AS TopLink
    Oracle Business Components for Java
    Oracle Application Server Web Services
    Oracle JDeveloper
    Oracle Application Server Forms Services
    Oracle XML Developer Kit
    Oracle PL/SQL
    Oracle Content Management SDK
    Oracle Application Server MapViewer
    Portals Oracle Application Server Portal
    Oracle Application Server Portal Developer Kit
    Oracle Ultra Search
    Oracle Application Server Syndication Services
    Wireless Oracle Application Server Wireless
    Oracle Application Server Wireless Developer
    Kit
    Business Intelligence Oracle Application Server Reports Services
    Oracle Application Server Discoverer
    Oracle Application Server Personalization
    E-Business Integration Oracle Application Server InterConnect
    Oracle Application Server ProcessConnect
    Caching Oracle Application Server Web Cache
    System Management Oracle Enterprise Manager
    Identity Management и Security Oracle Application Server Single Sign-On
    Oracle Application Server Certificate Authority
    Java Authentication and Authorization Service
    Oracle Internet Directory

    Как вы уже успели заметить, платформа Oracle Application Server объединяет в себе множество технологий и инструментов для создания полного цикла разработки и развертывания приложения. Мы рассматриваем версию Oracle Application не только потому, что она является актуальной и сочетает в себе опыт и возможности предыдущих версий, но еще и потому, что она стала первой Grid-ориентированной платформой, открывающей много новых возможностей. Среди нововведений отметим:

  • Управляемость – в состав Oracle Application Server входит набор средств управления рабочей нагрузкой, который за счет перераспределения имеющихся ресурсов между приложениями упрощает оптимизацию вычислительной мощности.
  • Надежность – по заявлению разработчиков корпорации Oracle, новая платформа Oracle Application Server обладает новыми средствами повышения безопасности и надежности корпоративных решений, выполняемых на кластерах и в сети распределенных вычислений предприятия. Среди новых возможностей прежде всего следует отметить функции:
  • Fast-Start Fault Recovery Architecture – это усовершенствованная архитектура быстрого запуска при устранении отказа;
  • Failure Notification (FaN) – функция оповещения об ошибках.
  • Интеграция приложений – новые возможности интеграции позволяют использовать один программный продукт для различных типов интеграции приложений и создать единую модель данных, выступающую информационным ядром для поддержки реализации будущих интеграционных проектов.
  • Новые возможности для веб-сервисов – это прежде всего усовершенствование функциональности веб-сервисов. Grid Computing Model (GCM) оптимизирует процесс наращивания и распределения вычислительной мощности, а веб-сервисы, в свою очередь, облегчают повторное использование приложений.
  • Oracle Forms Services

    Oracle Forms Services (OFS) – это компонент Oracle Application Server, предназначенный для переноса приложения в Web. Когда пользователь запускает приложение Oracle Forms, автоматически загружается и кешируется на клиентской Java-машине Java-апплет из сервера приложений (Oracle AS). Также модуль OFS при запуске приложения Forms Developer преобразует его графический интерфейс в набор Java-апплетов, которые пересылаются на клиентский компьютер. Даже несмотря на то, что Forms использует Java-апплет для отображения формы в клиентском браузере, от пользователя не требуется знание языка JAVA.

    Преимущество над другими клиент-серверными версиями Forms

    По сравнению с предыдущими версиями Forms, такая архитектура дает следующие преимущества:

  • возможность не устанавливать клиентское программное обеспечение на все компьютеры, которые работают с приложением, что существенно снижает затраты на развертывание такой системы;
  • администрирование – благодаря использованию модуля OFS достигается высокая масштабируемость, так как администрирование одного сервера приложений намного проще, чем множества клиентских компьютеров;
  • автоматическое распределение нагрузки – Oracle AS Forms Services автоматически распределяет нагрузку на все серверы приложений, работающие в системе. Что же касается распределения нагрузки на сервер в критические моменты или переадресации пользовательских запросов, то в этом вам поможет Oracle Enterprise Manager (OEM), который содержит компоненты для администрирования всех серверов приложений.
  • Oracle Forms Services использует трехзвенную архитектуру (рис 1.1).

  • Звено Клиент содержит браузер, в котором отображается форма.
  • Сервер приложений – это промежуточное звено, в котором располагается сервер программного обеспечения и логики приложений.
  • Звено База Данных – это сервер БД, в которой хранятся данные.
  • (рис 1.1) Архитектура Oracle Forms Services

    Основные компоненты Oracle Forms Services:

  • JAVA Client;
  • Forms Listener Servlet;
  • Forms Servlet;
  • Forms Runtime Engine.
  • Oracle Developer Suite

    Oracle Developer Suite 10g – это полный набор интегрированных средств для разработки интернет-приложений, который включает в себя удобную интегрированную среду разработки со средствами моделирования, программирования на PL/SQL, Java, разработки компонентов, бизнес-анализа, составления отчетов и диаграмм. И, что очень важно, все эти средства используют общие ресурсы, что позволяет совместно работать над одним проектом группе разработчиков. В таблице 1.3 приведены компоненты (продукты) Oracle Developer Suite.

    Состав Oracle DS
    Компонент Описание
    Oracle Designer Проектирование БД и приложений
    Oracle Forms Developer Разработка экранных форм
    Oracle Reports Developer Разработка отчетов
    Oracle JDeveloper Разработка приложений на Java
    Business Components for Java Бизнес-компоненты на Java
    Oracle Discoverer Разработка аналитических приложений
    Oracle Warehouse Builder Проектирование хранилищ данных

    В состав Oracle Developer Suite также входит XML Developer's Kit (XDK) – набор различных компонентов, утилит и интерфейсов для организации работы с XML-документами. Различают пять различных XDK:

  • XDK for Java;
  • XDK for JavaBeans;
  • XDK for C;
  • XDK for C++;
  • XDK for PL/SQL.
  • Oracle Developer Suite поддерживает стандарт UML-моделирования объектных приложений, который позволяет моделировать классы и рабочие процессы с последующей генерацией кода для среды BC4J. Хранение моделей предусмотрено в общем репозитории Oracle, где удобно контролировать версии объектов.

    Если у вас большой коллектив разработчиков, то для поддержки их работы в Oracle Developer Suite предусмотрен репозиторий, который централизованно хранит структурированные данные как объекты базы данных, а неструктурированные – как файлы и XML-документы. Репозиторий – это своего рода единое хранилище метаданных приложений, обеспечивающее параллельную работу разработчиков. Использование репозитория дает разработчикам возможность анализировать зависимости между объектами, контролировать использование общих компонентов. Для удобства работы с репозиторием предусмотрены такие функции, как просмотр архива версий, управление процессом обновления версий объектов, а также функции контроля зависимостей и управление конфигурациями.

    Oracle Developer Suite содержит набор переносимых JavaBean-компонентов пользовательского интерфейса, разработку и поддержку веб-приложений. Для реализации этих возможностей разработчики могут использовать API-интерфейсы Java или User Interface XML (UIX).

    Oracle Designer

    Oracle Designer – это интегрированная CASE-среда для автоматизации процессов всех этапов полного жизненного цикла сложной прикладной системы, включая детальный анализ предметной области, проектирование, программирование, тестирование, оценку, сопровождение, обеспечение качества, управление конфигурацией, управление проектом, документирование системы, формулировку и анализ требований.

    Oracle JDeveloper 10g

    Oracle JDeveloper 10g – это интегрированная среда разработки для моделирования, разработки и отладки J2EE-приложений и веб-сервисов. Как и в случае с Oracle Forms, разработка приложений в JDeveloper существенно упрощена за счет использования мастеров, редакторов, инструментов моделирования и дружественного интерфейса. Также среди прочего следует отметить поддержку возможности интерактивной привязки данных к пользовательскому интерфейсу и автоматического развертывания в сервере приложений.

    Oracle Reports

    Oracle Reports – это мощный инструмент для разработки отчетов любой степени сложности на основе информации, хранящейся в базах данных или других источниках. Oracle Reports позволяет не только отображать информацию из БД, но и управлять внешним видом документа, а также сформировать различные типы документов с помощью мастеров. Вы также можете генерировать выходной файл в другом формате, таком как HTML, PDF, RTF, SPREADSHEETS или XML.

    Oracle Warehouse Builder

    Oracle Warehouse Builder (OWB) – это расширяемая многофункциональная CASE-среда, предназначенная для разработки и развертывания корпоративных хранилищ и витрин данных.

    Oracle Discoverer

    Oracle Discoverer – это инструмент для получения произвольных отчетов, формирования нерегламентированных запросов и анализа данных. Он обеспечивает быстрый и удобный доступ к информации, содержащейся в реляционных и многомерных хранилищах и витринах данных, а также в транзакционных системах, в том числе не обязательно работающих под управлением СУБД Oracle. С помощью Oracle Discoverer пользователь может получать необходимые ему данные в виде различных таблиц, графиков и диаграмм.

    Oracle Business Intelligence Beans

    Oracle Business Intelligence Beans – это набор компонентов JavaBeans, предназначенных для создания приложений бизнес-анализа. Взаимодействие с JDeveloper – "бесшовная" интеграция компонентов BI Beans. Компоненты Oracle Business Intelligence Beans позволяют создавать приложения бизнес-аналитики и использовать преимущества функциональности OLAP.

    Oracle Forms Developer

    Oracle Forms Developer – это мощное средство для быстрой разработки приложений, которые основаны на информации, хранящейся в базах данных или других источниках. Forms Developer содержит исчерпывающий набор инструментов для создания полнофункционального прикладного программного обеспечения, состоящего из форм, отчетов и деловой графики. Вы можете программировать вызов отчета, построенного с помощью Oracle Reports, по нажатии пункта меню или кнопки, или в форму может быть вставлен вывод диаграммы, сгенерированной с помощью Oracle Graphics. Такой модульный подход предоставляет максимальную гибкость при проектировании и разработке новых прикладных программ, а также для поддержания и улучшения существующих. Forms Developer имеет большое количество различных мастеров для быстрого создания объектов. Если вы разрабатываете приложение в Forms, то в первую очередь вы избавляете себя от написания большого количества кода, так как все основные операции взаимодействия с БД уже автоматизированы.

    Oracle Forms и другие инструменты Developer оптимизированы так, что имеют и используют множество новых и мощных свойств текущего сервера Oracle, а также средства разработки приложений для ввода, доступа, изменения или удаления данных из БД Oracle в реальном времени. Ниже приведены другие особенности Forms Developer.

  • Деление приложения – в зависимости от ситуации вы можете хранить ваши PL/SQL-модули на сервере или в приложении. Вы можете перетаскивать объекты как между модулями, так и в пределах модуля.
  • Инструменты быстрой разработки – Forms Developer имеет большое количество различных мастеров для быстрого создания объектов. Когда вы разрабатываете приложение с помощью мастера, количество кода сводится к минимуму или его не требуется вообще, поэтому создание простейшего приложения может занимать считанные минуты.
  • Гибкость и контроль исходного кода – менеджер конфигурации программного обеспечения (Software Configuration Manager – SCM), интегрированный с Forms Developer, предназначен для управления структурированными и неструктурированными данными и всеми типами файлов в рамках жизненного цикла разработки программного продукта.
  • Масштабируемость – используя многозвенную архитектуру, вы можете масштабировать приложение от одного до десятков тысяч пользователей без надобности вносить в приложение какие-либо изменения. Вы также можете повысить масштабируемость приложения за счет использования функциональности сервера, связываемых переменных, курсоров, хранимых процедур, пакетов, DML- и DDL-операций.
  • Поддержка Java, SQL, PL/SQL – Forms Developer поддерживает разработку на всех перечисленных языках.
  • Повторное использование объектов – Forms Developer имеет очень удобную модель наследования, а также средства ее реализации, которые облегчают наследование различных признаков (атрибутов) от одного объекта другому, от одного приложения к другому, используя объектные библиотеки (Object Library) и подклассы.
  • Набор встроенных пакетов – Forms Developer содержит множество пакетов, которые существенно упрощают разработку приложений, предоставляя такие возможности, как файловый ввод-вывод, подключение внешних библиотек.
  • Что касается различных версий Forms, то в этой книге будут упомянуты различные версии, одна из которых Oracle Forms 6i. Это единственная версия, поддерживающая три режима вывода формы на экран: терминальный, графический (GUI) и в браузере. Особенность такого приложения состоит в том, что в любом из перечисленных режимов оно может быть запущено без перекомпиляции. Каждая новая версия предоставляет много других новых и важных возможностей по сравнению с предыдущими версиями; так, например, если брать новшества, появившиеся в Oracle Forms 6i, то в отличие от более ранних версий здесь есть возможность интегрировать сформированные отчеты с офисными приложениями (Microsoft Word, Excel). Также вам предоставляется возможность использовать мощные средства программирования, предоставляемые OLE-сервером приложений.

    Однажды созданное вами приложение в Oracle Forms на платформе Windows может работать на таких платформах, как Linux, Mac Os, AIX и многих других. Другими словами, приложение, разработанное в Forms, – кросс-платформенное и может работать под управлением любой операционной системы единственное требование – это перекомпиляция модуля. Все версии до Forms 6i включительно являются клиент-серверными и требуют установки клиентского программного обеспечения на всех компьютерах, работающих с необходимым приложением.

    Приложения, созданные в Oracle Forms Developer, могут быть развернуты на любом уровне предприятия, также вы можете создавать решения для малого и крупного бизнеса, поддерживающие от одного до сотни одновременно работающих пользователей. Учитывая возможность расширения инструментария пользователем, с помощью Forms можно создать практически любое требуемое окружение базы данных Oracle.

    Вернуться к учебному плану