<Insert Picture Here>

Slides:



Advertisements
Présentations similaires
Table des matières En famille Part 1 Ma famille Subject pronouns
Advertisements

ASP.NET v2 + Ajax = Atlas Pierre Lagarde DevDays 2006 Equipé aujourdhui, prêt pour demain !
Tout commence par un modeste éditeur de texte issue dune PME à Redmond, WA-USA.
Échanger connaissances et techniques sur les routes et le transport routier 1 The PIARC Website.
Talking about your House How to say where things are, what they are like, and to whom they belong.
OTB Analog module: Input configuration with TSX PREMIUM (TSXCPP110)
interaction in the .LRN platform
Cliquez et modifiez le titre Cliquez pour modifier les styles du texte du masque Deuxième niveau Troisième niveau Quatrième niveau Cinquième niveau 1 Regulation.
Status report SOLEIL April 2008
Coopération/Distribution DEA Informatique Nancy. Content 4 Introduction - Overview 4 Coordination of virtual teams : –explicit interaction model –explicit.
PILOTE - Sous Projet PILOTE SOUS-PROJET 5 Cyril Carrez, Elie Najm, Alexandre Tauveron.
PILOTE - Sous Projet PILOTE SOUS-PROJET 5 Cyril Carrez, Elie Najm, Alexandre Tauveron.
1 Contexte et interaction dans les interfaces zoomables Stuart Pook Eric Lecolinet Guy Vaysseix Emmanuel Barillot École Nationale Supérieure des Télécommunications.
Toolkit Web Framework Java pour les IHMs Cédric Dumas mars 2008 contrat Creative Commons Paternité-Pas d'Utilisation Commerciale- Partage.
1 AWAP : Administrable Wireless Access Point Projet de fin détude 2003 Cédric Logeais Mathias Faure.
Architecture Web. Accès aux données Développement spécifique Conserver l'architecture classique en y insérant un système propriétaire SapphireWeb, ColdFusion,
NOUVEAUTES UNIMARC 2006 ZONE 210. ZONE DE LADRESSE Je suis éditeur : Laurent Editions Je lance lédition de mon périodique en 2000 EN CATALOGAGE 210 ##$aMontpellier$cLaurent.
JDBC: manipuler une base de données en Java IFT6800 – E 2007 Jian-Yun Nie.
Enesys RS Data Extension
Intégrer son site dans sa « Stratégie Facebook ».
Defence R&D Canada R et D pour la défense Canada Novel Concepts for the COP of the Future Denis Gouin Alexandre Bergeron-Guyard DRDC Valcartier.
Mobile Clients for Location-Based Services
Click Cliquez. Welcome to the presentation of the new " S.E.R.T. VE Calculator " Bienvenue à la présentation du nouveau " S.E.R.T. VE Calculator " (S.
1 Le Store WebContent Benjamin NGUYEN UVSQ & INRIA-SMIS Spyros ZOUPANOS U.Paris Dauphine & INRIA-LEO Workshop Sources Ouvertes et Service – Caen 2010.
10 Copyright © Oracle Corporation, Tous droits réservés. Autres concepts relatifs aux déclencheurs.
TM.
– Search Marketing et Marketing Interactif 1 ère Position – David Degrelle Tel : ou
Actualités Services Providers & SPLA
Chapitre 1 Structure.
Defence Research and Development Canada Recherche et développement pour la défense Canada Canada 11-1.
RECOMMENDATION FROM GrACQ PRECONISATIONS DU GrACQ EDMS:
AFNOR NF Z – "Online Consumer Reviews
#JSS2013 Les journées SQL Server 2013 Un événement organisé par GUSS.
Documents > J2SE APIs > J2EE APIs
Les Webcasts Groupe des Utilisateurs SQL Server Avril 2014 – Statistiques Incrémentales Fred Pichaut – Microsoft Senior.
Magnets fiche projet / project sheet IAFACTORY THE MAGNETIC FACTORY magnets. IAFACTORY | conseil en architecture de linformation | |
TortoiseSVN N°. Subversion : pour quoi faire ? Avoir un espace de stockage commun – Tous les étudiants du SIGLIS ont un espace svn commun Partager vos.
1 Quakelight : le making of Julien Frelat Chef de projet InnoveWare Solutions Code Session : RIA309.
Historique de SystemC Regroupe 4 courants didées: SCENIC Project : Synopsys+UC Irvine Philips System-Level Data Types, VSIA SLD DWG IMEC, Hardware-Software.
Architecture Logicielle Les supports d’applications
1 Développement des Applications des Bases de Données Chapitre 6, Sections
Pierre Lagarde Christophe Lauer
SAP Best Practices Commande en ligne pour les clients et les partenaires SAP.
IAFACTORY | conseil en architecture de linformation | | |
Les choses que j aime Learning Objective: To know how to use j aime to talk about things I like to do.
Introduction au WebMapping
Mise en œuvre du langage MDX
ETL et Data Mining Présenté par : Marc Catudal-Gosselin Université de Sherbrooke automne 2004 automne 2004.
BBoard Fonctionne pas. BBoard Copier le répertoire dézippé dans le répertoire modules de post nuke Renommer ce répertoire en yabbse. Entrer le chemin.
1. Les structures de documentation pour la division ST. 2. Les types de document dans la division ST. 3. Linterface informatique. Lundi 8 Mai 2000 ST Quality.
1 CSI 2532 Lab5 Installation de JDBC Février 13, 2012.
14 mai 2003TSTG Barcelona Meeting - Gilbert1 TSTG General Meeting: Configure and Makefile issues Gilbert Grosdidier LAL-Orsay/IN2P3/CNRS & LCG.
I. Intro, contexte, historique des mmorts II. SVN, historique des langages utilisés III. Serveur PHP, client 2D: JavaScript IV. Client 3D: Java, JoGL.
Cest mercredi le neuf octobre Le plan! 1.Révisions 2.Vocabulaire 3.Jouer 4.Ecouter 5.Parler Il fait beau! Le but! Les couleurs!
Marketing électronique Cours 5 La personnalisation.
1 CSI 2532 Lab6 Application Web et DB Février 27, 2012.
Fabienne Boyer Laboratoire LIG (INRIA-UJF-INPG) Projet SARDES, INRIA Rhône-Alpes APACHE/VELOCITY.
BIOS – – SADI Semantic Automated Discovery and Integration Sébastien Carrere.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
Première CTP le 4 décembre Nouvelle CTP depuis le 1 er février RTM milieu de cette année.
Branche Développement Le présent document contient des informations qui sont la propriété de France Télécom. L'acceptation de ce document par son destinataire.
Content Management System CMS. Pourquoi ? Obligation de ressaisir des contenus publiés à plusieurs endroits Pas d’outils de gestion de qualité de l’information.
Mise en œuvre du langage MDX
Présentation du framework JSF (Java Server Faces) dans le modèle événementiel MVCII
Initiation à Oracle Server
Fiche méthodologique 1: How to understand a text? (Written comprehension) General remarks: 1.It is OK NOT to understand everything…….yes, it is!! 2. You.
MDA ( Model Driven Architecture ). Introduction Model Driven Architecture ● Framework ● Développement de logiciels ● Object Management Group (OMG) ●
Update on Edge BI pricing January ©2011 SAP AG. All rights reserved.2 Confidential What you told us about the new Edge BI pricing Full Web Intelligence.
1-1 Introduction to ArcGIS Introductions Who are you? Any GIS background? What do you want to get out of the class?
Transcription de la présentation:

<Insert Picture Here> 6 Mapviewer

Points couverts Architecture Installation et configuration Définition de cartes MapBuilder La console Mapviewer Exemple d’utilisation Oracle Maps

Oracle 10g: MapViewer Serveur d’application Fourni avec toutes les versions du serveur d’application Oracle Interfaces XML, Java et Javascript (Ajax) Outil de définition de cartes Cartes décrites dans la base (symbologie, visibilité, etc.) Cartes thématiques Formats PNG, GIF, JPEG, SVG Compatibilité OGC WMS Serveur et client

MapViewer Architecture Client (browser, servlet, JSP, PL/SQL) Application Java API XML/HTTP Oracle Application Server Map Rendering Engine JDBC MapViewer Architecture Client applications connect to MapViewer and send XML mapping requests via the HTTP communications protocol. Requests include information about which database to query, and also information about the map to be drawn. MapViewer connects to the database using JDBC, fetches information about the map to be drawn from the map metadata tables, then selects the spatial data to be mapped by performing spatial queries. MapViewer then renders the map, and the response to the map request sent back to the client for display is a streamed map or a pointer to the map along with the bounds of the map. Database Spatial Tables Map Definitions Mapbuilder

Requêtes et réponses Une requête spécifie: Le contenu de la carte Carte de base Thèmes Statiques Thèmes Dynamiques Formes Dynamiques La position de la carte Centre et taille Le format du résultat Type d'image Dimensions en pixels Mapping Client La réponse contient: L'image proprement dite Ou L' URL vers l'image ainsi que le MBR de la carte Formats: GIF, PNG, SVG, JPEG MapViewer MapViewer Query A client sends an XML request to MapViewer that includes the base map name as stored in the map metadata, the center and size of the map to be displayed, and any optional tags to be displayed in the map (such as a map title, jdbc_query elements, legends, and others). <jdbc_query> elements enable you to submit any SQL statement in Oracle that returns SDO_GEOMETRY objects, and display the results on a base map generated by MapViewer. The base map generated by MapViewer is composed of rectangular viewport queries against a predefined set of SDO_GEOMETRY columns. <jdbc_query> elements will be discussed more towards the end of this lesson. MapViewer queries map metadata views via JDBC to determine which layers are associated with the map its about to generate. MapViewer queries the spatial data layers, renders the data, performs the JDBC element queries, and then either returns a streamed map or a pointer to the map, along with the minimum bounding rectangle associated with the map. Oracle Spatial

Contenu d'une installation MapViewer La servlet Mapviewer L'outil de définition de cartes Des styles de base Des exemples d'applications (JSP) Une IHM d’administration (HTML) Mapbuilder Sample Java Server Page HTTP/XML Application Server JDBC MapViewer Installation and Configuration MapViewer requires setting up Oracle9iAS Containers for J2EE (also known as OC4J). An admin JSP ships with MapViewer to help register connection information with OC4J. A MapViewer installation includes the following components: The MapViewer .ear (enterprise archive) file Scripts to create map metadata views and populate default styles A Beta version of the Map Definition Tool which is used to manage the map metadata. An admin java server page (JSP) to configure connection information with OC4J The MapViewer metadata views are created automatically in an Oracle9i, Release 2 database install. Since MapViewer can generate maps from Oracle 8.1.7 version databases and beyond, any database prior to Oracle9i, Release 2 must have the MapViewer metadata views manually installed in the Oracle MDSYS schema (the script is provided with the MapViewer kit). This is discussed in more detail in an upcoming slide. All database versions, Oracle9i, Release 2 included, must have the default styles populated manually (the script is provided with the MapViewer kit). This is also discussed in an upcoming slide. Oracle Spatial Mapping Metadata MapViewer

Installation de MapViewer MapViewer n'est pas déployé automatiquement avec le serveur d'application Le kit est fourni sous forme d'un fichier "EAR" (J2EE Enterprise Archive) standard: mapviewer.ear de 2.3 MB Installation au moyen des outils de déploiement standard du serveur d'application. Peut s'installer dans le moteur J2EE du serveur d'application (Oracle Components for J2EE - OC4J) Standalone OC4J Installation A minimum MapViewer configuration requires OC4J, Release 2 (which is shipped with Oracle9iAS, Release 2). OC4J, Release 2 (~20 Mb zipped) can be downloaded at: http://technet.oracle.com/software/products/ias/devuse.html Select Oracle9iAS J2EE Downloads To install OC4J: Unzip the zip file, and the J2EE\home directory will get created Initialize OC4J cd J2EE\home type: java –jar oc4j.jar -install Note: You should install OC4J outside of the ORACLE_HOME directory for the system.

Déploiement de Mapviewer Console d'administration OC4J

Démarrage de Mapviewer Automatiquement lors du démarrage du serveur d'application. java -jar oc4j.jar … 05/03/06 18:56:59 Oracle Containers for J2EE 10g (10.1.3.0.0) - Developer Preview 3 initialized 05/03/06 18:56:55 Sun Mar 06 18:56:55 CET 2005 INFO [oracle.lbs.mapserver.oms, ,#Thread-9] *** Oracle MapViewer started. *** Standalone OC4J Installation – Standalone MapViewer Installation (continued) Starting OC4J: From the command line, cd J2EE\home Type: java –jar oc4j.jar The first time OC4J is started after a new MapViewer install, the ORACLE_HOME\lbs\mapviewer.ear file will be expanded into a directory structure. Any time OC4J is started, you should see the following message: [oracle.spatial.mapserver.oms, INFO] *** Oracle Map Viewer is successfully started. ***

Configuration de Mapviewer MapViewerConfig.xml Niveau de trace et destination Gestion des images <logging log_level="finest" log_thread_name="true" log_time="true"> <log_output name="System.err"/> <log_output name="../log/mapviewer.log"/> </logging> <save_images_at file_prefix="omsmap" path="../../../web/images" life= "5" recycle_interval="10" />

Configuration de Mapviewer MapViewerConfig.xml Informations globales sur les cartes Cache de données <global_map_config> <title text="MapViewer Demo" font="Courrier" position="NORTH"/> <note text="Oracle (C) copyright 2004" font="Bookman Old Style Bold Italic" position="SOUTH_EAST"/> <logo image_path="../../../web/myicons/orcl_logo.gif" position="SOUTH_WEST"/> </global_map_config> <spatial_data_cache max_cache_size="64" />

Configuration de Mapviewer MapViewerConfig.xml Sources de données permanentes Mot de passe crypté automatiquement <map_data_source name="elocation" jdbc_mode="thin" jdbc_host="localhost" jdbc_port="1521" jdbc_sid="orcl101" jdbc_user="elocation_map" jdbc_password="!elocation_map" number_of_mappers="5" /> jdbc_password="DdhrdKHeq1xR/ign0PUcL54OJh5rTw/X0mVALwrWYqE="

Définition des Cartes Les définitions sont dans la base USER_SDO_MAPS USER_SDO_THEMES USER_SDO_STYLES Définition au moyen de l'outil fourni (Mapbuilder) Map Metadata The Map Definition Tool The Map Definition Tool is one of the most helpful MapViewer tools. It helps build and manage information associated with styles, themes and maps. The Map Definition Tool is currently in Beta, and it can be downloaded from the following location on Oracle TechNet: http://otn.oracle.com/products/spatial Click on “software” under “Spatial” on left side The Beta version of the Map Definition Tool is not shipped with the Oracle9iAS, Release 2 CD. A production version of the Map Definition Tool is planned for Oracle9iAS, Release 4. The Map Definition Tool is written in Java.

Définition des Cartes STYLE THEME MAP Couleurs, styles de lignes, symboles, textes Style avancés pour thématiques THEME Associe un ou plusieurs styles avec une table spatiale Style graphique, et style des étiquettes Correspond à une couche dans la carte MAP Groupement de thèmes Spécifie l'ordre des thèmes et leur visibilité selon l'échelle Les cartes peuvent partager les thèmes Oracle9iAS MapViewer Concepts Styles, themes and maps are all very important concepts to understand when generating maps with MapViewer. Styles: Styles determine how geometries are rendered. Styles can include properties like fill color, border color, line thickness, line style and more. Advanced styles are styles that render a geometry differently based on another column’s value. This is commonly known as thematic mapping. For example, imagine a table with county polygons, and the polygons need to be rendered differently depending on a county’s population. Thematic mapping of the counties based on population can be accomplished with an advanced style. Advanced styles will be discussed more in an upcoming slide. Themes: A theme is analogous to a geometry column. A theme must have an associated style which determines how geometries for that theme are rendered. Optionally, a theme may have an associated label column. If a theme has an associated label column, its geometries get labeled with the text value of that column. Labels columns must have an associated style. MapViewer performs sophisticated text management. For example, MapViewer avoids having labels overwrite other labels.

Définitions privées, définitions globales Styles USER_SDO_STYLES = mes styles personnels ALL_SDO_STYLES = tous les styles définis dans la base Themes USER_SDO_THEMES = mes thèmes personnels ALL_SDO_THEMES = les thèmes sur les tables auxquelles j'ai accès Maps USER_SDO_MAPS = mes cartes personnelles ALL_SDO_MAPS = toutes les cartes MapViewer Dictionary Views The definition of styles, themes and maps are stored in the database in MapViewer dictionary views. There are three categories of MapViewer dictionary views: *_SDO_STYLES *_SDO_THEMES *_SDO_MAPS For each category, there is a USER_*, ALL_*, and DBA_* version of that category for a consistent look and feel to other dictionary views in Oracle. For example, for the *_SDO_STYLES category, the following dictionary views exist: USER_SDO_STYLES: Insert styles into this view ALL_SDO_STYLES: Select styles from this view, never insert into this view DBA_SDO_STYLES: Can see all styles, never insert into this view

USER_SDO_STYLES Chaque style a un nom unique (par utilisateur) Type de style: COLOR, MARKER, TEXT, LINE, ADVANCED Définition codée en XML Aussi formes géométriques et bitmaps (pour les symboles) Quelques styles de base fournis dans l'installation de Mapviewer (fichier DefaultStyles.sql) SQL> describe user_sdo_styles Name Type ---------------------- ------------------ NAME VARCHAR2(32) TYPE VARCHAR2(32) DESCRIPTION VARCHAR2(4000) DEFINITION CLOB IMAGE BLOB GEOMETRY MDSYS.SDO_GEOMETRY USER_SDO_STYLES All themes rendered by MapViewer must have an associated style. Style definitions are stored in the database. New style entries can be made by inserting into the USER_SDO_STYLES MapViewer dictionary view. The Map Definition Tool (discussed in detail in upcoming slides) greatly simplifies the process of inserting new styles in USER_SDO_STYLES. With the Map Definition Tool, users are abstracted from having to know XML to insert new styles. Detailed examples of how to build XML definitions for styles is described in the Oracle9iAS MapViewer User’s Guide. Automatic population of default styles is planned for Oracle10i. The Oracle MapViewer kit when installed includes a SQL script to populate some default styles. The default styles are not populated automatically. To populate the default styles: Log in to SQL*Plus as the Oracle MDSYS user SQL> @ORACLE_HOME\lbs\mapviewer\admin\defaultstyles.sql Note: If populating styles in a pre-Oracle9i, Release 2 database, the MapViewer metadata views must get created first.

USER_SDO_THEMES Chaque thème a un nom unique (par utilisateur) Un thème est associé à une table et une colonne géométrique Règles de représentation en XML Se réfèrent aux styles définis par leur nom SQL> describe user_sdo_themes Name Type ------------------ --------------- NAME VARCHAR2(32) DESCRIPTION VARCHAR2(4000) BASE_TABLE VARCHAR2(32) GEOMETRY_COLUMN VARCHAR2(2048) STYLING_RULES CLOB USER_SDO_THEMES All maps rendered by MapViewer are made up of one or more themes. Theme definitions are stored in the database. New theme entries can be made by inserting into the USER_SDO_THEMES MapViewer dictionary view. The Map Definition Tool (discussed in detail in upcoming slides) greatly simplifies the process of inserting new themes in USER_SDO_THEMES. With the Map Definition Tool, users are abstracted from having to know XML to insert new themes. Optionally, a theme may have an associated label column. If a theme has an associated label column, its geometries get labeled with the text value of that column. Label columns must have an associated style. A theme’s label column and associated style are stored along with the rest of the theme styling rules in XML. Detailed examples on how to build XML styling rules for themes is described in the Oracle9iAS MapViewer User’s Guide. As mentioned above, it is much easier to have the Map Definition Tool build the XML styling rules.

USER_SDO_MAPS Chaque carte a un nom unique (par utilisateur) Liste des thèmes utilisés Codés en XML SQL> describe user_sdo_maps Name Type ------------------- ------------------- NAME VARCHAR2(32) DESCRIPTION VARCHAR2(4000) DEFINITION CLOB USER_SDO_MAPS All maps rendered by MapViewer are made up of one or more themes. Map definitions include all the themes that make up a map, along with an optional min scale and max scale for each theme. Map definitions are stored in the database. New map entries can be made by inserting into the USER_SDO_MAPS MapViewer dictionary view. The Map Definition Tool (discussed in detail in upcoming slides), greatly simplifies the process of inserting new maps in USER_SDO_MAPS. With the Map Definition Tool, users are abstracted from having to know XML to insert new maps. Detailed examples on how to build XML definition for maps is described in the Oracle9iAS MapViewer User’s Guide. As mentioned above, it is much easier to have the Map Definition Tool build the XML definition.

Utilisation de MapBuilder

Styles

Themes

Cartes

Console MapViewer

Exemple d’utilisation de MapViewer

Anatomie d'une requéte XML <?xml version="1.0" standalone="yes"?> <map_request datasource="spatial10g" basemap="US_BASE_MAP" format="PNG_STREAM" width="480" height="400"> <center size="12"> <geoFeature> <geometricProperty> <Point> <coordinates>-120.0,39.0</coordinates></Point> </geometricProperty> </geoFeature> </center> <themes> <theme name="PARKS.US_PARKS" /> <theme name="INTERSTATES.US_INTERSTATES" /> </themes> </map_request> Data source et carte Format du résultat Centre et taille de la carte Thémes additionnels mapclient.jsp mapclient.jsp along with its source code ships with MapViewer. This is a very useful JSP to get you started viewing maps defined through the Map Definition Tool. Once MapViewer is installed, the source code to the JSP is located in: ORACLE_HOME\lbs\mapviewer\web\demo\mapclient.jsp To run the JSP, go to the following URL where local host is the name of your server, and the port (8888) is the port you configured OC4J with: http://localhost:8888/mapviewer/demo/mapclient.jsp The following is a definition of each of the fields on the JSP. MapViewer URL: URL to the MapViewer Servlet => http://localhost:8888/mapviewer/omserver Data Source: Name of the data source Title: Optional title for the map Base Map: Name of the base map defined with the Map Definition Tool Map Center X Coord: center x value for the map Map Center Y Coord: center y value for the map Map Size: The horizontal width of the map will be two times the specified size. In the example above, the map will be 10 decimal degrees from east to west. Size is specified in the unit of the coordinate system associated with the spatial data.

Le résultat …

Une requête en Java // Setup map request mv = new MapViewer(mapViewerURL); mv.setDataSourceName(dataSource); mv.setBaseMapName(baseMap); mv.setImageFormat(MapViewer.FORMAT_PNG_URL); mv.setDeviceSize(new Dimension(mapWidth, mapHeight)); mv.setCenterAndSize(cx, cy, mapSize); // Send map request mv.run(); // Get URL to generated Map imgURL = mv.getGeneratedMapImageURL(); // Get size and center of new map mapSize = mv.getSize(); Point2D center = mv.getCenter();

PL/SQL API SDO_MVCLIENT package Install into your database Wrappers on the Java API methods: PROCEDURE setDataSourceName(name IN VARCHAR2) AS LANGUAGE JAVA NAME 'oracle.lbs.mapclient.SQLMapClient.setDataSourceName (java.lang.String)'; … FUNCTION getGeneratedMapImageURL RETURN VARCHAR2 AS NAME 'oracle.lbs.mapclient.SQLMapClient.getGeneratedMapImageURL() return java.lang.String';

PL/SQL API Example Setup a connection to Mapviewer Setup a map request Submit the request Extract resulting map URL call sdo_mvclient.createmapviewerclient( 'http://www.mycorp.com:8888/mapviewer/omserver') call sdo_mvclient.setDataSourceName('mvdemo'); call sdo_mvclient.setImageFormat('PNG_URL'); call sdo_mvclient.setBaseMapName('us_base_map') ; call sdo_mvclient.setBox(-122.3615, 37.4266, -121.1615, 37.6266); call sdo_mvclient.setDevicesize(500,400); call sdo_mvclient.run(); mapUrl := sdo_mvclient.getgeneratedMapImageURL();

MapViewer "AJAX" Architecture Client (browser) Application JavaScript Map API XML/HTTP Oracle Application Server Map Cache Server FOI Server Map Cache Map Rendering Engine JDBC MapViewer Architecture Client applications connect to MapViewer and send XML mapping requests via the HTTP communications protocol. Requests include information about which database to query, and also information about the map to be drawn. MapViewer connects to the database using JDBC, fetches information about the map to be drawn from the map metadata tables, then selects the spatial data to be mapped by performing spatial queries. MapViewer then renders the map, and the response to the map request sent back to the client for display is a streamed map or a pointer to the map along with the bounds of the map. Database Spatial Tables Map Definitions Mapbuilder

Oracle Maps : architecture Oracle Maps is composed of client and server side components. Client side: Comprised of a JavaScript viewing library (called FSMC - Free Scrolling Map Client) and a public API Resides inside the browser Assembles various contents into a map displayed to the end user Talks to server side components through AJAX calls Server side Map Cache server which manages pre-generated base map tiles FOI server which creates interactive FOI data for the client Both are relying upon the main MapViewer rendering engine

Asynchronous JavaScript and XML (AJAX) Classic browser cycle: Send form to server Get full new page from server "AJAX" browser cycle: Send request(s) to server from page sections Get response to request Process response and update page section only user browser server user browser server

Oracle Maps client side: a simple HTML page showing a map <head> <script language="Javascript" src="jslib/loadscript.js"></script> <script language=JavaScript> var baseURL = "http://"+document.location.host+"/mapviewer"; function display_map() { var mapview = new MapView(document.getElementById("map"), baseURL); mapview.addBaseMapLayer(new BaseMap("mvdemo.demo_map")); mapview.setCenter(-122.45, 37.75); mapview.setZoomLevel(5); var foiLayer = new ThemeBasedFOI ('customers', 'mvdemo.customers') ; mapview.addThemeBasedFOI (foiLayer); mapview.addNavigationPanel("east"); mapview.display(); } </script> </head> <body onload= JavaScript:display_map() > <h2>A Simple Web Mapping Application</h2> <div id="map" style="left:10; top:60;width: 600px; height: 500px"></div> </body></html> Load the Oracle Maps client viewing lib map initialization function Invoke map initialization function where the map will appear on the page

Oracle Maps : map cache server Map source 1 Map Cache Instance 1 Map source 2 Map Cache Instance 2 Map source 3 Map Cache Instance 3 map tiles

Map cache server : tiling Each map tile in a map cache instance is identified by a mesh code. Defined as a pair of integers (Mx, My) Mx specifies the X dimension index of the tile My specifies the Y dimension index of the tile. Transparent to the application developer Oracle Maps client viewing lib automatically calculates mesh codes. What is Tile Mesh Code? A map tile

Map cache server Administration MapViewer comes with a web based admin console for managing map cache instances:

Oracle Maps FOI server Any existing geometry theme can be added to the map as a FOI layer The FOI server requires zero-configuration; it relies on MapViewer to process a theme, then repackages the theme data into a format that can be interpreted by the client viewing library When using MapBuilder to create a predefined theme, you can specify “info columns” in the theme to be displayed in its FOI info-tip windows