Bonjour,
Après quelques mois d'abandon de la carto IGN, je reviens afin de mettre à jour notre site avec la dernière version (GeoportalExtended.js).
Le but est d'afficher des fichiers KML aussi ai-je récupérer le fichier Javascript de l'api et je l'utilise en local (au passage, y a-t-il besoin de plus ?).
J'ai suivi toutes les étapes préconisées pour la migration mais j'obtiens dans firebug l'erreur suivante : "TypeError: Geoportal.Catalogue.TERRITORIES[territory] is undefined"
J'y ai aussi vérifié que Geoportal.Catalogue.TERRITORIES['FXX'] était bien connu dans la console Firebug.
Est-ce un problème de latence ?
Voici une portion du code utilisé :
Dans un premier temps, j'ai bien l'init
puis une fois la page chargée...avec SystemeReferenceCoordonneesIGN = 'FXX' pour le cas de mon KML courant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 function loadAPI() { if (IsCartoIGN==true) { // on attend que les classes soient chargées if (checkApiLoading('loadAPI();', ["OpenLayers", "Geoportal", "Geoportal.Viewer", "Geoportal.Viewer.Default", "Geoportal.Viewer.Standard", "Geoportal.Catalogue"]) === false) { return; } // on charge la configuration de la clef API, puis on charge l'application Geoportal.GeoRMHandler.getConfig([CleIGN], null, null, { onContractsComplete: initGeoportalMap }); } } window.onload= loadAPI;
C'est semble-t-il le "territory" qui semble ne pas être connu...comme c'est la version compressée javascript, difficile d'aller plus loin dans l'exploration du code afin de trouver le blême...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 function geoportalLoadmap(idDivMap, mode, territoire, crs, dispcrs, proxy) { var options= {}; if(mode) {options.mode= mode;} if (territoire) { options.territory = territoire; } if(crs) {options.projection= crs;} if(dispcrs) {options.displayProjection= dispcrs;} if(proxy) {options.proxy= proxy;} options.nameInstance = 'map'; map = new Geoportal.Viewer.Default(idDivMap, OpenLayers.Util.extend(options, window.gGEOPORTALRIGHTSMANAGEMENT===undefined? {'apiKey':CleIGN} : gGEOPORTALRIGHTSMANAGEMENT) ); return map; } function initGeoportalMap() { ObjetDIV = window.document.getElementById('GeoportalMapDiv'); if ((ObjetDIV) && (IsAffichageAFaire == true)) { if (map == null) { if (typeof(geoportalLoadmap) == 'function') { geoportalLoadmap("GeoportalMapDiv", "normal", SystemeReferenceCoordonneesIGN); } ... // Chargement des couches ad hoc } ... } ....
Merci d'avance pour tout éclaircissement.
Partager