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

Servlets/JSP Java Discussion :

Problème de CAST au niveau d'une JSP


Sujet :

Servlets/JSP Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Problème de CAST au niveau d'une JSP
    Bonjour à tous,

    je vous expose mon problème, je développe un site internet en J2EE. J'en suis pour l'instant aux fonctions de base : création d'un objet et affichage des objets crées dans une jsp.

    Je vous décris plus en détails mes étapes qui aboutissent au problème :
    -je travaille dans une façade en @Local
    -je lance ma servlet objets.Ajout.java, cette servlet contient :

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    facade.createObjet("objet1", 10);
    facade.createObjet("objet2", 15);

    }

    et dans façade j'ai :

    public void createObjet(String name, float prix) {
    // TODO Auto-generated method stub
    Objets ob = new Objets(name, prix);

    em.persist(ob);

    }

    - ensuite, je lance la servlet objets.List.java qui contient :

    protected void doPost(HttpServletRequest request,
    HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub

    ArrayList<Objets> al = facade.listObjet();
    request.setAttribute("listeObjet", al);
    RequestDispatcher disp = request.getRequestDispatcher("/objets.jsp");
    disp.forward(request, response);

    }

    et la facade contient :

    public ArrayList<Objets> listObjet() {
    // TODO Auto-generated method stub
    Query q = em.createQuery("select a from objet.Objets as a");

    List<Objets> l = (List<Objets>) q.getResultList();
    return new ArrayList<Objets>(l);
    }

    - cette servlet forward vers objets.jsp :

    <table>
    <tr>
    <th>Nom</th>
    <th>Prix</th>
    </tr>
    </tr>

    <br> <%
    Object ret = request.getAttribute("listeObjet");

    ArrayList<Objets> al = (ArrayList<Objets>) ret;


    out.println(al);
    for (int i = 0; i < al.size(); i++) {

    Objets ob = al.get(i);
    out.println("<tr><td>" + ob.getNom() + "</td><td>"
    + ob.getPrix() + "</td></tr>");
    }
    %>

    </table>


    j'obtiens finalement cette erreur :

    org.apache.jasper.JasperException: An exception occurred processing JSP page /objets.jsp at line 48

    45: out.println(al);
    46: for (int i = 0; i < al.size(); i++) {
    47:
    48: Objets ob = al.get(i);
    49: out.println("<tr><td>" + ob.getNom() + "</td><td>"
    50: + ob.getPrix() + "</td></tr>");
    51: }


    Stacktrace:
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:498)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    objets.List.doPost(List.java:55)
    objets.List.doGet(List.java:41)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
    cause m�re

    java.lang.ClassCastException: objet.Objets cannot be cast to objet.Objets
    org.apache.jsp.objets_jsp._jspService(objets_jsp.java:105)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    objets.List.doPost(List.java:55)
    objets.List.doGet(List.java:41)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

    - Quand je fais juste un out.println(al) cela fonctionne j'obtiens bien ma page avec mes 2 objets =>
    [objet.Objets@125ff6c6, objet.Objets@5a424a96]

    - mais à partir du moment ou je fais un Objets ob = al.get(i); j'ai l'erreur du dessus.

    Je ne vois pas d'où peut provenir l'erreur...

    Merci d'avance pour vos réponses

  2. #2
    Membre actif Avatar de JulienFio
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 201
    Points : 241
    Points
    241
    Par défaut
    Quand tu récupères ton attribut, il s'agit d'une liste d'objet et non d'un objet. Essayes plutôt comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ArrayList<Objets> al = (ArrayList<Objets>) request.getAttribute("listeObjet");
    if(al != null){ //tjs tester la nullité pour eviter de se prendre un NullPointerException
       for (int i = 0; i < al.size(); i++) {
       Objets ob = al.get(i);
       out.println("<tr><td>" + ob.getNom() + "</td><td>"
       + ob.getPrix() + "</td></tr>");
       }
    }
    Non l'homme ne descend pas du singe, il descend plutôt du mouton..

Discussions similaires

  1. Problème de récupération de variable dans une JSP
    Par dandy-kun dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 17/12/2014, 10h11
  2. Problèmes de accès aux ressources dans une JSP
    Par sepltura dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 18/06/2012, 09h49
  3. Problème de "java.lang.NullPointerException" dans une JSP
    Par abdoulfall dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 11/02/2012, 04h46
  4. erreur au niveau d'une jsp
    Par tarikmahf dans le forum Servlets/JSP
    Réponses: 12
    Dernier message: 05/02/2008, 21h06
  5. probléme pour parcourir un tableau dans une JSP
    Par nightcyborg dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 02/12/2007, 17h28

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