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

JavaScript Discussion :

window parent postMessage


Sujet :

JavaScript

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut window parent postMessage
    Bonjour,

    J'ai deux intranet, l'un en java, l'autre en php.
    Le premier fait ouvre dans une iframe le second. le second devrait me retournée une chaîne de caractère que le premier doit intégrer dans un champ de formulaire.
    J'ai pas mal creusé la question du cross-domain mais sans succès pour le moment. J'ai fait aussi pas mal de test, mais pour le moment sans succès.
    Sur pas mal de site on parle de l'utilisation window.parent.postMessage avec l'utilisation d'iframe. J'ai fait un test en local cela fonctionne correctement.
    en revanche avec mes sites cela échoue et Firefox me retourne un undefined sur le code suivant contenu dans l'iframe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    try { window.parent.postMessage("retour", "*") ; }
    catch(err) { alert("err : " + err.description); }
    Avez-vous déjà eu le cas ? et si oui comment le résoudre ?
    D'avance merci de votre aide.

    HadanMarv

  2. #2
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    Par curiosité, pourquoi 2 langages serveur ?

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut
    Historique semble-t-il.
    Je reprends des développements, donc je n'ai pas encore toutes les clés.

  4. #4
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    Citation Envoyé par HadanMarv Voir le message
    Historique semble-t-il.
    Je reprends des développements, donc je n'ai pas encore toutes les clés.
    Courage.

    (et, non, en ce qui me concerne je n'ai pas de conseil à te donner sur ton problème spécifique par contre si tu as des différences local/online, essaie de débugger avec Firebug, notamment pour avoir une visibilité sur les échanges HTTP)

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut
    pour le moment je n'ai que des traces de Permission denied...

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut
    J'y suis finalement arrivé, enfin presque. si j'attaque ma jsp directement dans le navigateur, c'est ok. en revanche en l'incluant dans une modal ou une popup, bah là c'est échec complet...
    Permission denied ModalContentWindow.postMessage
    Quelqu'un aurait-il une idée ?
    D'avance merci de vos lumières.

    HadanMarv

  7. #7
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut
    Juste pour aiguiller les réflexions de manière plus fine j'obtiens l'erreur :
    Permission refusée à <http://monsiteenphp> d'appeler la méthode ModalContentWindow.postMessage alors que je passe par un window.open il me parle tout de même de modal...

    Après plusieurs recherche, semble effectivement que ce soit du côté des popups que cela bloque. Avez-vous déjà entendu parler de ce problème ?

    D'avance merci.
    Pour rappel, quand je ne suis pas en popup cela fonctionne très bien, et il m'annonce en plus que je suis bien sur deux domaines différents...

  8. #8
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut
    J'utilise ce bout de code pour récupérer les messages postés :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    window.onmessage = function(e){
    	alert("Data : " + e.data) ;
    	alert("Origin : " + e.origin) ;
    };
    Dans le cas ou je tape l'url dans la barre d'adresse tout fonctionne correctement, j'ai bien mon message envoyé lors du premier alert et l'origine correspondant (le domaine en fait), dans le second alert.

    Personne n'a encore rencontré ce problème ?
    Ce que je n'arrive pas à cerner, c'est pourquoi cela ne fonctionne pas dans le cas où le tout se trouve dans une popup.

    D'avance merci de vos réponses.
    HadanMarv

  9. #9
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut
    Bon, et bien je viens poster la réponse car c'est franchement incompréhensible du moins de mon point de vue. Probablement que certains quand ils liront mon post se diront bien évidement mais pour ma part cela reste un mystère.

    Donc j'avais creusé du côté des Iframe en construisant une popup à la volée incluant une iframe avec mon autre site en php. Sans passer par la popup en tapant donc l'url directement dans mon navigateur, j'obtenais le résultat escompté. En revanche en appelant ma page simple contenant l'iframe dans une popup comme nécessaire dans mon site en Java, et bien Permission Denied...

    J'ai essayé un truc dingue, j'ai tout viré en laissant simplement l'ouverture dans une popup de mon site en php, et remplacé le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.parent.postMessage(..., ....) ;
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.opener.postMessage(..., ...) ;
    J'ai rajouté un eventListener dans la page principale et bien tout fonctionne.
    Si certain d'entre vous on le même soucis, je peux fournir plus d'informations voir même des exemples, de ce qui peut et ne peut pas marcher.

    @+
    HadanMarv

  10. #10
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut
    Et bien c'était trop beau pour être vrai, bien entendu sous IE cela ne fonctionne pas... il me dit que :

    est inconnu !!!!
    Avez-vous une idée ?
    D'avance merci.

    HadanMarv

  11. #11
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut
    avec l'utilisation de :
    il semble que ce soit logique. Cependant en passant par un :
    à la place c'est une erreur bien plus fun :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cette interface n'est pas reconnu
    Sympa, vous trouvez pas ?
    Je n'arrive pas à croire que je suis le premier à faire face à ce genre de problème. C'est incompréhensible ce que je veux faire / explique ?

    Merci de vos retours.
    HadanMarv

  12. #12
    Membre régulier
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2009
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2009
    Messages : 169
    Points : 100
    Points
    100
    Par défaut
    bon avec le week-end prolongé non pas plus d'idée ?
    Pour ma part, je vais maintenant attaqué les tests sur IE8 pour voir.
    Si certains ont des idées, je suis toujours preneur.

    HadanMarv

Discussions similaires

  1. window.parent.history bug firefox
    Par madstrix dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 28/03/2011, 23h02
  2. window.parent.document.[..] et IE
    Par highman dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/07/2007, 14h31
  3. Probleme avec IFRAME et fonction sur window.parent
    Par FadeOut dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 23/10/2006, 09h31
  4. Envoyer résultat d'une popup vers son window.parent
    Par LFC dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 05/12/2004, 11h18

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