Базы данных Oracle - статьи

         

Запросы, задействованные в задаче


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

Запрос к сервлету MapViewer имеет следующий формат:

http://hostname[:port]/MapViewer-servlet-path?xml_request=xml-request
где hostname - это сетевой путь к серверу, на котором запущен MapViewer.
port - это порт, на котором сервис MapViewer слушает сеть.
MapViewer_servlet_path - это путь к сервлету MapViewer (например :/mapviewer/omserver)
xml_request - кодированный по правилам URL запрос в формате XML, который отсылается на сервер методами POST или GET. Форма представления запроса в виде XML требуется во всех видах запросов. Содержимое ответа на запрос может варьироваться от данных в виде XML-документа до бинарного объекта, содержащего файл изображения, запрошенного пользователем.

В отправляемом запросе необходимо указать источник данных и один или более необходимых параметров:

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

В нашем конкретном случае, генерируя HTML-страницу, PL/SQL-процедура выполняет непосредственно один запрос к MapViewer вида: 'http://hostserver:8888/mapviewer/omserver? xml_request='<?xml version="1.0" standalone="yes"?> <map_request datasource="ds_demo" basemap="map_demo" width="640" height="480" bgcolor="#FFFFFF" antialiasing="false" format="GIF_URL"> <center size="[size]">


<geoFeature> <geometricProperty> <Point> <coordinates>[x],[y]</coordinates> </Point>

</geometricProperty> </geoFeature> </center> </map_request>

где
  • hostserver:8888/mapviewer/omserver - сервер MapViewer
  • datasource="ds_demo" - параметр запроса, определяющий источник данных, настроенный ранее для MapViewer
  • basemap="map_demo" - параметр, определяющий имя базовой карты, и включающей в себя все необходимые метаданные, необходимые для формирования и отображения карты.
  • width="640" height="480" - эти параметры задают размеры в пикселах результирующего изображения карты
  • bgcolor="#FFFFFF" - параметр задает RGB-цвет фона изображения карты, поверх которого отрисовывается все остальное.
  • antialiasing="false" - параметр сглаживания ступенчатости на изображении карты.
  • format="GIF_URL" - параметр, указывающий MapViewer, что необходимо сформировать изображение карты и вернуть ссылку на него.
  • <center>...</center> - раздел, определяющий участок карты, котрый нужно отобразить на результирующем изображении.
  • size="[size]" - параметр определяющий размер карты.
  • <geoFeature>...</geoFeature> - раздел указывающий MapViewer, что положение отображаемого участка карты будет задано при помощи пространственного объекта (в нашем случае при помощи точки).
  • <geometricProperty>...</geometricProperty> - подраздел задает геометрические параметры пространственного объекта.
  • <Point>...</Point> - этим подразделом конкретизируется, что в качестве пространтсвеннгшо объекта будет указана точка.
  • <coordinates>[x],[y]</coordinates> - а здесь уже конкретно указываются координаты точки в единицах измерения и системе координат карты



  • Содержание раздела