IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IGN API Géoportail Discussion :

Problème "Access is denied"


Sujet :

IGN API Géoportail

  1. #1
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut Problème "Access is denied"
    Merci pour cette nouvelle version...
    Je passe un peu de temps à analyser, tester et nettoyer mon code...

    Cependant, je constate une erreur sous IE8

    Message : Access is denied to: http://atlasnw.free.fr/geoportail/ap...selectnone.htc
    Ligne : 0
    Caractère : 0
    Code : 0
    URI : http://vivlig.free.fr/indexV1.htm
    Qui me perturbe un peu (je pense ou alors cela vient d'ailleurs) quelques fonctions. Comme c'est au chargement... Mais ieuserselectnone.htc, je ne connais pas encore...

    Je vois bien que mga_geo a introduit tous ses exemples de variables et tests (qui ne me dise pas grand chose) pour s'adapter entre autres aux navigateurs... Doit-on le suivre?

    Pour les plus curieux voici la page de test

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    2 128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 128
    Points : 1 764
    Points
    1 764
    Par défaut Fiddler ...
    Je viens de tester avec le proxy fiddler.
    Les 404 proviennent de pages absentes de ton site:
    http://vivlig.free.fr/img/roam.cur
    http://vivlig.free.fr/ieuserselectnone.htc

    Cela sent un problème déjà vu il y a quelques message!

  3. #3
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Citation Envoyé par mga_geo Voir le message
    Je viens de tester avec le proxy fiddler.
    Les 404 proviennent de pages absentes de ton site:
    http://vivlig.free.fr/img/roam.cur
    http://vivlig.free.fr/ieuserselectnone.htc

    Cela sent un problème déjà vu il y a quelques message!
    Je comprends pô, voici les lignes de l'API qui traitent ce sujet (corrigées après tes retours) :

    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
            var ua= navigator.userAgent.toLowerCase();
            this.browser= {
                version: (ua.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [0,'0'])[1],
                safari: /webkit/.test(ua),
                opera: /opera/.test(ua),
                msie: /msie/.test(ua) && !/opera/.test(ua),
                mozilla: /mozilla/.test(ua) && !/(compatible|webkit)/.test(ua)
            };
            //...
            if (this.browser.msie===true) {
                // load htc and cur relatively to the API :
                OpenLayers.Element.addCss('.olControlNoSelect{behavior:url('+Geoportal._getScriptLocation()+'theme/geoportal/ieuserselectnone.htc);}');
                OpenLayers.Element.addCss('.olControlSelect{behavior:url('+Geoportal._getScriptLocation()+'theme/geoportal/ieuserselectnormal.htc);}');
                OpenLayers.Element.addCss('.gpControlSliderBaseHandle{cursor:url('+Geoportal._getScriptLocation()+'theme/geoportal/img/roam.cur),pointer;}');
                OpenLayers.Element.addCss('.gpControlSliderBaseHandleDown{cursor:url('+Geoportal._getScriptLocation()+'theme/geoportal/img/roaming.cur),pointer;}');
            }
            ....
    La méthode AddCss vaut elle :

    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
        /**
         * Function: addCss
         * Insert a style node into the HEAD node.
         *
         * Parameters:
         * code - {String} the definition to add (one per style node).
         *
         * Returns:
         * {DOMElement} the inserted node or null when error.
         */
        OpenLayers.Element.addCss= function(code) {
            var sNode= document.createElement("style");
            sNode.setAttribute('type', 'text/css');
            if (sNode.styleSheet) {
                sNode.styleSheet.cssText= code;
            } else {
                sNode.appendChild(document.createTextNode(code));
            }
            try {
                document.getElementsByTagName("head")[0].appendChild(sNode);
                return sNode;
            } catch (e) {
                return null;
            }
        };
    Sous FF, Geoportal._scriptLocation vaut "/geoportail/api/js/1.0/" et Geoportal._getScriptLocation() vaut :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
            /**
             * Function: _getScriptLocation
             * Return the path to this script.
             *
             * Returns:
             * {String} Path to this script
             */
            _getScriptLocation: function () {
                if(Geoportal._scriptLocation) { return Geoportal._scriptLocation; }
                ...
            }
    Dois-je en conclure que le test if (this.browser.msie===true) échoue sous IE8 ...

  4. #4
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut
    Je fais quoi?
    Mon problème est que quand je clique sur une commune, l'écran secondaire s'ouvre bien mais ne charge pas l'application de gestion des images... Très embêtant...

  5. #5
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut
    Si cela peut vous aider...
    Ici, avec la nouvelle version de l'API, l'erreur décrite ci-dessus est systématique sur mes pages pourtant valides avec la version précédente. Cependant les exemples de l'IGN en version 1.0 passe bien. Cela me laisse penser à première réflexion (hypothèse saugrenue, mais quoi alors?) que la page qui réclame GeoportalExtended.js doit être hébergée sur le même serveur que ce fichier ...

    Mon appel à GeoportalExtended.js se fait par l'instruction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript" src="http://atlasnw.free.fr/geoportail/api/js/1.0/GeoportalExtended.js"></script>
    Ce qui me semble normal...

    Bon sinon, en actionnant l'outil de développement de IE (par F12), l'erreur (Argument non valide) inscrit dans la console de cet outil, est située à la ligne 97 de GeoportailExtended.js et le curseur pointe le "this" ci-dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ....  C.setAttribute("type","text/css");C.setAttribute("href",this.theme);document.getElementsByTagName("head")[0].appendChild(C)}}this.layers=[];if(this.controls==null){if(OpenLayers.Control!=null){this.controls=[new OpenLayers.Control.Navigation(),new OpenLayers.Control.PanZoom(),new OpenLayers.Control.ArgParser(),new OpenLayers.Control.Attribution()]}else{this.controls=[]}}for(var F=0,B=this.controls.length;F<B;F++){this.addControlToMap(this.controls[F])}this.popups=[];this.unloadDestroy=OpenLayers.Function.bind(this.destroy,this);OpenLayers.Event.observe(window,"unload",this.unloadDestroy)},render:function(B){this.div=OpenLayers.Util.getElement(B);OpenLayers.Element.addClass(this.div,"olMap");this.events.attachToElement(this.div);this.viewPortDiv.parentNode.removeChild(this.viewPortDiv);this.div.appendChild(this.viewPortDiv);this.updateSize()},unloadDestroy:null,updateSizeDestroy:null,destroy:function(){if(!this.unloadDestroy){return false}OpenLayers.Event.stopObserving(window,"unload",this.unloadDestroy);this.unloadDestroy=null;if(this.updateSizeDestroy){OpenLayers.Event.stopObserving(window,"resize",this.updateSizeDestroy)}else{this.events.unregister("resize",this,this.updateSize)}this.paddingForPopups=null;if(this.controls!=null){for(var B=this.controls.length-1;B>=0;--B){this.controls[B].destroy()}this.controls=null}if(this.layers!=null){for(var B=this.layers.length-1;B>=0;--B){this.layers[B].destroy(false)}this.layers=null}if(this.viewPortDiv){this.div.removeChild(this.viewPortDiv)}this.viewPortDiv=null;if(this.eventListeners){this.events.un(this.eventListeners);this.eventListeners=null}this.events.destroy();this.events=null},setOptions:function(B){OpenLayers.Util.extend(this,B)},getTileSize:function(){return this.tileSize},getBy:function(F,D,B){var E=(typeof B.test=="function");var C=OpenLayers.Array.filter(this[F],function(G){return G[D]==B||(E&&B.test(G[D]))});return C},getLayersBy:function(C,B){return this.getBy("layers",C,B)},getLayersByName:function(B){return this.getLayersBy("name",B)},getLayersByClass:function(B){return this.getLayersBy("CLASS_NAME",B)},getControlsBy:function(C,B){return this.getBy("controls",C,B)},getControlsByClass:function(B){return this.getControlsBy("CLASS_NAME",B)},getLayer:function(F){var C=null;for(var E=0,B=this.layers.length;E<B;E++){var D=this.layers[E];if(D.id==F){C=D;break}}return C},setLayerZIndex:function(C,B){C.setZIndex(this.Z_INDEX_BASE[C.isBaseLayer?"BaseLayer":"Overlay"]+B*5)},resetLayersZIndex:function(){for(var D=0,B=this.layers.length;D<B;D++){var C=this.layers[D];this.setLayerZIndex(C,D)}},addLayer:function(D){for(var C=0,B=this.layers.length;C<B;C++){if(this.layers[C]==D){var E=OpenLayers.i18n("layerAlreadyAdded",{layerName:D.name});OpenLayers.Console.warn(E);return false}}if(this.allOverlays){D.isBaseLayer=false}this.events.triggerEvent("preaddlayer",{layer:D});D.div.className="olLayerDiv";D.div.style.overflow="";this.setLayerZIndex(D,this.layers.length);if(D.isFixed){this.viewPortDiv.appendChild(D.div)}else{this.layerContainerDiv.appendChild(D.div)}this.layers.push(D);D.setMap(this);if(D.isBaseLayer||(this.allOverlays&&!this.baseLayer)){if(this.baseLayer==null){this.setBaseLayer(D)}else{D.setVisibility(false)}}else{D.redraw()}this.events.triggerEvent("addlayer",{layer:D});D.afterAdd()},addLayers:function(D){for(var C=0,B=D.length;C<B;C++){this.addLayer(D[C])}},removeLayer:function(D,F){if(F==null){F=true}if(D.isFixed){this.viewPortDiv.removeChild(D.div)}else{this.layerContainerDiv.removeChild(D.div)}OpenLayers.Uti.....
    Vous imaginez bien que cela me dépasse... Et vous?

  6. #6
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Peux-tu passer sur la production ?

    J'ai noté le cas du this : il apparaît (sporadiquement) lors de la fermeture (ou rechargement) de la page sous IE. Mes premières investigations montrent que tout est normal sous IE (pas de variable nulle, variable du bon type, etc ...). Le seul point commun aux erreurs est qu'elle représente la div des couches sans noeud fils (children.length==0) ...

    Un mystère de +

  7. #7
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut
    Je viens de passer en production... Visible à http://vivlig.free.fr/indexV1.htm
    A première vue, le résultat est identique. Erreur "Access is denied to...."
    Qui bloque ensuite quelques javascript...

  8. #8
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut Cà marche !
    Citation Envoyé par cmail Voir le message
    Je viens de passer en production... Visible à http://vivlig.free.fr/indexV1.htm
    A première vue, le résultat est identique. Erreur "Access is denied to...."
    Qui bloque ensuite quelques javascript...
    C'est d'autant plus mystérieux que je viens de re-re-re-...-tester sous IE6 (je sais il faut être stupide, mais bon 10% des utilisateurs du Géoportail persistent à utiliser ce vénérable butineur) et IE8 : 0 erreurs (bon, sauf l'exemple flash sous IE6) ...

    J'ai donc chargé ton URL :
    * sous IE6 : nickel (Cf. capture);
    * sous IE8 : nickel (Cf. capture)

    Où est le problème
    Images attachées Images attachées   

  9. #9
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut
    Il y a un coté positif, puisque cela marche chez toi... Mais tout de même, ici, j'ai un problème systématique cf l'image jointe. J'ai bien regardé ma configuration IE, mais rien d'extraordinaire. Une idée?

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 52
    Points : 28
    Points
    28
    Par défaut
    Chez moi aussi, sous IE8, j'ai l'erreur en bas de page.

  11. #11
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Une piste maintes fois évoquée est le modèle de sécurité des fichiers de comportement (htc) microsoft...
    J'ai commencé à regarder cela semble être lié au fait que tout comme avec Ajax la réception des htc doit se faire depuis le même FQDN (serveur, port) que le script qui fait cet appel ...

    A suivre donc ...

    @cmail: étant sur les scripts de production, tu peux enlever onload :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <body id="body" onload="initGeoportalMap();">
    par:


Discussions similaires

  1. [ACCESS][JAVA][INSERT][QUOTE]Pb insertion quot
    Par 205 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 31/01/2008, 17h00
  2. Réponses: 1
    Dernier message: 13/09/2007, 16h57
  3. Problème sur Request.ServerVariables("QUERY_STRING"
    Par PrinceMaster77 dans le forum ASP
    Réponses: 3
    Dernier message: 25/03/2005, 11h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo