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 :

Rafraichir une page web avec une condition


Sujet :

JavaScript

  1. #21
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par vermine Voir le message
    Le system.out affiche sur votre page web l'erreur ?
    C'est à dire ? oui le message est généré directement sur la page web, "signal" est définit dans un fichier css avec les caractéristiques du message d'erreur (couleur ect....) le message d'erreur est lui contenu dans un fichier.class gérant les interactions entre les pages et la gestion des exceptions comme celle là, je vais essayer votre code, merci encore.

    Une erreur s'est produite à la ligne: 60 dans le fichier jsp: /interblackbox/formdepart.jsp
    Syntax error on token ";", delete this token
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    57: 		&& (session.getAttribute("status").equals(new Integer(42)) ) ) {
    58: %>
    59: 	<p class="signal">An error was done...<br>
    60: 	<%=session.getAttribute("error").toString(); %>
    61: 	</p><hr width="50%"><hr>
    62: <%	session.setAttribute("status",null); 
    63: 	%>
    Une erreur s'est produite à la ligne: 90 dans le fichier jsp: /interblackbox/formdepart.jsp
    Syntax error on token ";", delete this token
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    87: 		&& (session.getAttribute("status").equals(new Integer(42)) ) ) {
    88: %>
    89: 	<p class="signal">An error was done...<br>
    90: 	<%=session.getAttribute("error").toString(); %>
    91: 	</p><hr width="50%"><hr>
    92: <%	session.setAttribute("status",null); 
    93: 	%>

    je vais réessayer en supprimant la virgule.

  2. #22
    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 vermine Voir le message
    Essayez plutôt
    Citation Envoyé par voir titre du post
    ...
    omg... voilà j'arrive plus à travailler et les autres me regardent avec un drôle d'air...

    ...pour les linguistes et les curieux >>> générateur de phrases aléatoires

    __________________

  3. #23
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Ha ben j'aurais au moins fait un heureux sur la journée.

    Par contre, Thomas, je pense qu'un reload n'est pas l'idéal. Je n'ai pas bien saisi d'où venait les données mais il me semble qu'un appel de la servlet serait plus approprié.

  4. #24
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Points : 38
    Points
    38
    Par défaut
    La page web boucle toujours indéfinimment (hum pléonasme), je vais passer à autre chose je suis bloqué là dessus depuis bien trop longtemps, je voulais vous remercier pour votre aide c'était vraiment sympa et j'ai appris des choses. Je considère le problème comme résolu.

  5. #25
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    C'est pour ça que je vous proposais de faire un appel à la Servlet plutôt que de recharger la page. Dans votre code, vous vider la session, vos conditions sont donc toujours respectées et il n'y a plus aucun message. L'appel à la Servlet va refaire ses vérifications et remettre des valeurs dans les paramètres que vous interrogez.

    Mais bon, là nous ne sommes plus en Javascript mais en JSP-Servlet. Question à poser sur le forum Java.

  6. #26
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Points : 38
    Points
    38
    Par défaut
    oui je suis désolé je m'étale sur plusieurs domaines différents avec mon soucis, en fait je travail sur un projet et je ne maitrise pas tout le code, c'est pour ça que j'ai "quelques" difficultés, en fait je ne comprends pas ce que vous entendez par "faire appel à la servelt", pour mou la servelt c'est une application web réalisé en java, je ne vois pas comment "l'appeler".

    Désolé tout ça est un peu nouveau pour moi.

  7. #27
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Avec une URL. Généralement on le fait via le submit du formulaire HTML. L'URL contacte le serveur où est la servlet, interroge la servlet en lui passant un point d'entrée éventuel et des paramètres.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://serveur/servlet/NomServlet?entre=pointdentree&param1=un&param2=deux

  8. #28
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Points : 38
    Points
    38
    Par défaut
    Ok, en fait c'est ce qui est déjà fait (je crois), dans la page sur laquelle je travail il y a bien appel à la servlet:

    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
    <form name="main_form_text" action="processus.do" method="POST" enctype="multipart/form-data">
     
    <script type="text/javascript">
     
    	function reFresh() {
      	location.reload(true)
    	}
    	</script>	
     
    <% 	if ( (session.getAttribute("status") != null) 
    		&& (session.getAttribute("status").equals(new Integer(42)) ) ) {
    %>
    	<p class="signal">An error was done...<br>
    	<%=session.getAttribute("error").toString() %>
    	</p><hr width="50%"><hr>
    <%	session.setAttribute("status",null);
    	%>
       <script type="text/javascript">
       window.setTimeout(reFresh, 3000);
       </script>
    <%
    }
    %>
     
     
     
    <input type="submit"  value="Load file">
     
    </form>
    je n'ai pas mis l'intégralié du code, c'est lorsque je lance "load file" que toute la procédure est mise en place, ou plutôt si j'ai bien compris, que la servlet est appelée.

  9. #29
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut Struts ? :-s
    Du coup, au lieu de ceci dans la fonction :

    vous auriez :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.main_form_text.submit();

  10. #30
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Points : 38
    Points
    38
    Par défaut
    Je supprime totalement la fonction de refresh pour y injecter à la place cette ligne de code c'est bien ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.main_form_text.submit();

  11. #31
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Non, non, la fonction et le mécanisme restent mais c'est la définition de la fonction qui change. Au lieu du reload, on fait un submit. On remplace une ligne par une autre.

  12. #32
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Points : 38
    Points
    38
    Par défaut
    Rien n' y fait, je vais mettre ca de coté pour le moment, je tenais à vous remercier pour votre patience et pour l'ensemble de vos messages.

  13. #33
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Points : 38
    Points
    38
    Par défaut
    C'est encore moi, en fait cette ligne de code fonctionne, seulement elle fait appelle à la servlet, et donc au bout de 3 sec c'est comme si j'appuyais à nouveau sur le bouton "load file", et là la page web boucle, et le message ne s'affiche toujours pas, n'y aurait'il pas un dérivé qui permettrait de recharger la page, quelque chose du genre



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.main_form_text.reload(true);

  14. #34
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Si, c'est la manière Javascript qui était proposée au début. Je pense qu'il y a un problème de conception. Il va falloir nous réexpliquer tout depuis le début.

    D'où venons-nous ?
    Qui donne les valeurs que l'on vérifie dans la condition ?
    Lorsqu'il y a une erreur et que l'on fait un refresh, qui rafraichit les valeurs que l'on vérifie dans la condition ?
    Pourquoi vider le statut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    session.setAttribute("status",null);
    ?
    N'avez-vous pas laissé un appel à la fonction de refresh en plein milieu du jeu de quille ?
    ... ?

  15. #35
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Points : 38
    Points
    38
    Par défaut
    En fait je continue un projet qui a été travaillé pendant des mois déjà, je ne connaissais pas le javascript et les jsp il y a un mois, et j'ai relevé de nombreuses incohérences dans le code, cependant je ne peux pas tout réecrire (je n'ai ni le temps ni les capacités) et j'ai quelques difficultés a comprendre le code par endroits.

    Qui donne les valeurs que l'on vérifie dans la condition ?
    Les valeurs que l'on vérifie dans la condition sont entrés par l'utilisateur, elles correspondent au fichier qui a été uploadé.

    Lorsqu'il y a une erreur et que l'on fait un refresh, qui rafraichit les valeurs que l'on vérifie dans la condition ?
    Je ne suis pas sur de pouvoir vous répondre, en fait la page interprète bien qu'il y a une erreur et le type d'erreur (vite ou mauvais format) seulement "quelque chose" empèche l'affichage de se faire et la page charge indéfinimment, en fait la condition est répétée 3 fois dans la page jsp qui gère l'upload du fichier (1 fois dans le head et 2 dans le body) mais la condition est également située dans un fichier.java qui gère la communication entre les pages, et là pareil la même condition est répétée au moins 4 fois à des endroits différents. Bref en me relisant je viens de voir que je suis incapable de répondre à votre question


    Pourquoi vider le statut
    Code :
    Sélectionner tout - Visualiser dans une fenêtre à part

    session.setAttribute("status",null);
    Ce vidage se fait après l'apparition du message d'erreur, je suppose qu'il est simplement effacé pour permettre à l'utilisateur de réitéré l'opération d'uploading et ainsi avoir un nouveau message d'erreur s'il entre un mauvais fichier.


    N'avez-vous pas laissé un appel à la fonction de refresh en plein milieu du jeu de quille ?

    En fait j'ai fais appel à la fonction à chaque fois que la condition apparaissait sur la page jsp, soit 3 fois.

  16. #36
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Il ne faut effectivement qu'un seul appel sur toute la page JSP.
    Si vous avez une erreur, et que vous rechargez la page, comment espérez-vous que l'erreur ait disparu ? Je dois avouer que je n'ai pas compris cette partie-là.

    Par contre, le message d'erreur devrait apparaitre au moins la première fois.

  17. #37
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 101
    Points : 38
    Points
    38
    Par défaut
    En fait je n'ai jamais réussis a recharger la page à l'aide de la fonction, ce que vous m'avez donné pour faire appel a la servlet fonctionne correctement, mais quand je tente un reload(true) pour recharger ma page pour voir apparaître le message d'erreur il n'en ait rien la page ne se recharge pas.

    Où me conseillez vous de faire l'appel à la fonction, plutot dans le head ou dans le body ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [Google Maps] Réaliser une page web avec une map google
    Par botch_nor dans le forum APIs Google
    Réponses: 14
    Dernier message: 20/10/2012, 14h48
  2. Réponses: 0
    Dernier message: 01/04/2009, 19h29
  3. Voir plusieurs pages web dans une page web
    Par lfa44 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 23/06/2007, 09h27
  4. [CSS] impression d'une page web en une page
    Par beegees dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 09/09/2006, 18h12
  5. diriger une page web vers une page php
    Par moonia dans le forum Langage
    Réponses: 7
    Dernier message: 11/04/2006, 11h41

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