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 :

[JSP] Problème pour accéder à un bean venant d'une servlet


Sujet :

Servlets/JSP Java

  1. #1
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 851
    Points : 4 743
    Points
    4 743
    Par défaut [JSP] Problème pour accéder à un bean venant d'une servlet
    Bonjour à tous

    Voici mon problème. Je dispose d'une servlet qui "exécute" une librairie. Je récupère dans cette servlet les données de ma librairie au moyen d'un objet :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SimplePCR spcr = new SimplePCR(parameters, pw);
    if(spcr==null){
    	pw.print("spcr null !");
    	return;
    }
    arg0.setAttribute("PCR", spcr);
    javax.servlet.RequestDispatcher disp = arg0.getRequestDispatcher("/results.jsp");
    disp.forward(arg0, arg1);
    Comme vous pouvez le voir, je veux "envoyer" cet objet spcr vers une page jsp afin d'y afficher les résultats. Voici un morceau de code de ma jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <jsp:useBean id="PCR" class="com.bioxpr.linkers.SimplePCR" scope="request" />
    <b><u>Results</u></b>:<br><br>
    <ul>
    <li>Primers pairs found: <%= PCR.numberPair %></li>
    Mais, lors de l'appel de cette page jsp, j'ai une erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    org.apache.jasper.JasperException: /results.jsp(12,0) 
    	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	Process.doPost(Process.java:37)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    Ma ligne 12, sur ma jsp, étant celle-ci : <jsp:useBean id="PCR" class="com.bioxpr.linkers.SimplePCR" scope="request" />.
    Et je ne comprend pas comment je peux la résoudre
    Merci d'avance de votre aide et désolé pour le pauvre vocabulaire, mais je débute en J2EE.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  2. #2
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 851
    Points : 4 743
    Points
    4 743
    Par défaut
    Personne ? Ou bien ai-je mal formulé ma question ?
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  3. #3
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 851
    Points : 4 743
    Points
    4 743
    Par défaut
    Hello

    En consultant la FAQ , j'ai voulu afficher le contenu de request dans ma page result.jsp. Tout se passe bien, excepté que je ne récupère pas mon objet spcr.
    Ma question est donc la suivante, lorsque l'on transmet un bean d'une servlet vers un JSP, le bean ne doit-il contenir que des attributs et aucune méthode ?
    Merci d'avance de vos réponses.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Points : 568
    Points
    568
    Par défaut
    Il me semble qu'en utilisant le flux de sorti de la reponse (dans ton code pw) tu rend impossible la redirection vers une jsp.
    Enfin ca reste a verifier, c'est peut etre pas du tout ca !!

    Je suis pas sur d'etre tres clair
    UML avec VIOLET

  5. #5
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 851
    Points : 4 743
    Points
    4 743
    Par défaut
    Hello FreshVic

    Merci de ta réponse, mais je ne pense pas que ce soit ça. Dans Process.java, j'ai écrit ceci :
    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
     
    protected void doPost(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {
    		arg1.setContentType("text/html");
    		Parameters params = new Parameters();
    		java.io.PrintWriter pw = arg1.getWriter();
    		params.setHashtable(arg0, pw);
    		java.util.ArrayList<String>AL = params.setParameters();
    		AL.remove(0);
    		AL.remove(0);
    		String[]parameters = params.getParameters(AL);
    		SimplePCR spcr = new SimplePCR(parameters, pw);
    		if(spcr==null){
    			pw.print("spcr null !");
    			return;
    		}
    		PcrBean bean = new PcrBean();
    		bean.numberPair = spcr.numberPair;
    		arg0.setAttribute("PCR", bean);
    		javax.servlet.RequestDispatcher disp = arg0.getRequestDispatcher("results.jsp");
    		disp.forward(arg0, arg1);
    	}
    Donc, j'ai crée un bean avec uniquement un attribut et pas de méthodes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public class PcrBean {
    	public long numberPair;
    }
    Voici le code results.jsp :
    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
     
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>
    <body>
    <div align="center"><h1><b><u>Prediction d'amorces PCR</u></b></h1></div>
    <p>
    <jsp:useBean id="PCR" class="PcrBean" scope="request" />
    <b><u>Results</u></b>:<br><br>
    <ul>
    <li>Primers pairs found: <%= PCR.numberPair %></li>
    </ul> 
    </p>
    </body>
    </html>
    Et quand j'arrive sur results.jsp à l'exécution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP
     
    Une erreur s'est produite � la ligne: 12 dans le fichier jsp: /results.jsp
    Erreur de servlet générée:
    PcrBean cannot be resolved to a type
    Rhaaaaa !!! Pourtant je reprend texto l'exemple du Développement Web J2EE d'O'Reilly mais ça marche pas !!!

    Merci d'avance de votre aide.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  6. #6
    Expert confirmé
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 851
    Points : 4 743
    Points
    4 743
    Par défaut
    Bon, j'ai trouvé une solution :
    Il me suffisait de mettre mon bean dans un packqge
    C'est ballot mais c'est ainsi.

    Merci pour vos indications.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code ni le tag

    Je ne répond à aucune question technique par MP.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Points : 568
    Points
    568
    Par défaut
    Ha oui , seul des classes du package par defaut peuvent acceder a des classes du package par defaut or les jsp sont dans la package org....etc!
    En gros ca veut dire qu'il faut toujours mettre un package !!
    C'etait effectivement une erreur difficile à trouver.
    UML avec VIOLET

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WebForms][User Controls] Problème pour accéder aux CSS
    Par BouB dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 04/12/2006, 17h35
  2. Problème pour accéder aux données ASP.net côté client
    Par mappy dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/07/2006, 16h10
  3. [JSP] Problème pour passer un array comme paramètre
    Par MxPx_23 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 06/06/2006, 18h13
  4. Problèmes pour accéder à ma view...
    Par loupdeau dans le forum MFC
    Réponses: 4
    Dernier message: 18/05/2005, 15h43
  5. [Tomcat] Problème pour accéder à une servlet
    Par david71 dans le forum Tomcat et TomEE
    Réponses: 9
    Dernier message: 08/04/2005, 14h56

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