Problemes sur encolade [Résolu]

Signaler
Messages postés
15
Date d'inscription
mercredi 6 janvier 2021
Statut
Membre
Dernière intervention
23 mars 2021
-
Messages postés
15
Date d'inscription
mercredi 6 janvier 2021
Statut
Membre
Dernière intervention
23 mars 2021
-
Quelequ'un peut m'aider pour voir cette erreur...enfaite c'est vraiment une erreur très simple mais j'y arrive...c'est une erreur d'encolade.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import = "java.sql.*" %>
<%@ page import = "connection.*" %>
<%@ page import = "olona.*"%>
<%@ page import = "view.*"%>
<%@ page import = "ordre.*"%>
<%@ page import = "bd.BDTable" %>
<%@ page import="java.lang.*" %>
<%
 Liaison n= new Liaison();
 Connection con= n.getConnection();
 String nom=request.getParameter("Nchef");
 String password=request.getParameter("mdpChef");
%>
    <p><a href="login.jsp">Deconnecter </a></p>

 
<%
 try{


            Chef chef= new Chef();
            chef=new Chef(null,nom,password);
            BDTable[] tableC=chef.find(chef,con);
            chef= (Chef)tableC[0];
            String name=chef.getNom();
            String pswd=chef.getMdp();
           
           // out.println("Nom de broker :"+" "+nom);


            if(name.equals(nom) && pswd.equals(password))
            {
                    Ordre ordre= new Ordre();
           Ordre[] o= new Ordre[0];
           ordre= new Ordre(null,null,null,null,-1,-1,-1,null);
           BDTable[] tableO=ordre.find(ordre,con);
           o= new Ordre[tableO.length];
           for(int i=0;i<tableO.length;i++)
           {
            o[i]= (Ordre)tableO[i];
            
           }
%>

               
          <h1>Table de quotation</h1>
                <table  width='1000'  border ='1';>
                <%for(int i=0;i<o.length;i++) { %>
                    
                    <tr>
                        <th>Achat</th>
                        <th>Vente</th>
                    </tr>
                    <tr>
                        <td>
                      <% if(o[i].getType().equals("Achat")) {%>
                            <td>
                                <%
                                out.println("IdSociete :"+" "+o[i].getId_Societe());
                                out.println("Quantite:"+" "+o[i].getQuantite());
                                out.println("PrixSouhaiter :"+" "+o[i].getPrixSouhaiter());
                                %>
                            </td> <%
                            }else if(o[i].getType().equals("Vente")){%>
                         <td>
                                <%
                                out.println("IdSociete :"+" "+o[i].getId_Societe());
                                out.println("Quantite:"+" "+o[i].getQuantite());
                                out.println("PrixSouhaiter :"+" "+o[i].getPrixSouhaiter());
                                %>
                            </td>
                            }
                    </tr>
                <%}%>
                </table>
            }<%else out.println("Erreur");
       
        }catch(Exception e1){
            
         out.println(e1.getMessage());
     }
  
  finally
        {
         con.close();
        }

%>

Et voila l 'erreur:
Une erreur s'est produite à la ligne: [75] dans le fichier jsp: /S3/Bourse/quotation.jsp
Syntax error, insert "}" to complete Block
72: </td>
73: }
74: </tr>
75: <%}%>
76: </table>
77: }<%else out.println("Erreur");
78:

c'est en jsp
Merci d'avance de bien vouloir m'aider

3 réponses

Messages postés
11
Date d'inscription
dimanche 19 janvier 2020
Statut
Membre
Dernière intervention
30 mars 2021
4
Bonjour,

En ligne 73 il y a une accolade "}" qui n'est pas dans un scriptlet,
ca doit être une ou la source de l'erreur.

ps: C'est la premiere fois que je vois des "scriptlets" et ca donne pas envie d'en utiliser.

Courage.
Messages postés
15
Date d'inscription
mercredi 6 janvier 2021
Statut
Membre
Dernière intervention
23 mars 2021

Merci beaucoup...et oui c'etait le source de l 'erreur.
Messages postés
16307
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
15 avril 2021
115
Bonjour,

Ligne 77 tu devrais remplacer
}<%else
par
<%}else
sinon l'accolade est dans le code HTML au lieu d'être dans le code Java.

Remarque : mettre du code entre <% %> (que l'on appelle des scriptlets) c'est du très vieux Java, tu devrais regarder comment fonctionne la JSTL par exemple.
https://codes-sources.commentcamarche.net/source/100195-exemple-simple-d-application-jstl
Messages postés
15
Date d'inscription
mercredi 6 janvier 2021
Statut
Membre
Dernière intervention
23 mars 2021

Merci beaucoup....mais j'ai encore cette erreur.


Une erreur s'est produite à la ligne: [77] dans le fichier jsp: /S3/Bourse/quotation.jsp
Syntax error, insert "}" to complete Statement
74: </tr>
75: <%}%>
76: </table>
77: <%}else out.println("Erreur");
78:
79: }catch(Exception e1){
80:
Messages postés
16307
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
15 avril 2021
115
Je n'ai pas tout l'environnement pour tester, mais il est possible que Java ne prenne pas en compte le code entre <% %> si tu ne laisse pas d'espace pour marquer la fin des symboles.

Genre :
<%}%>
serait ignoré car il faudrait écrire
<% } %>
en séparant bien l'instruction JSP du code Java qu'elle contient.