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 :

impossible de generer les .java des JSP


Sujet :

Servlets/JSP Java

  1. #1
    Membre habitué Avatar de semaj_james
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 193
    Points : 139
    Points
    139
    Par défaut impossible de generer les .java des JSP
    Bonjour,

    Je n'arrive pas générer les .java issues des JSP. Comment je peux faire ?
    voici le code:

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    /*****************************
    *  web.xml
    *****************************/
     
    <?xml version="1.0" encoding="ISO-8859-1"?>
     
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd">
     
    <web-app>
        <servlet>
            <servlet-name>webarticles</servlet-name>
            <servlet-class>istia.st.articles.web.WebArticles</servlet-class>
            <init-param>
                <param-name>springConfigFileName</param-name>
                <param-value>spring-config-sqlmap-firebird.xml</param-value>
            </init-param>
            <init-param>
                <param-name>urlMain</param-name>
                <param-value>/main</param-value>
            </init-param>
            <init-param>
                <param-name>urlErreurs</param-name>
                <param-value>/vues/erreurs.jsp</param-value>
            </init-param>
            <init-param>
                <param-name>urlListe</param-name>
                <param-value>/vues/liste.jsp</param-value>
            </init-param>
            <init-param>
                <param-name>urlInfos</param-name>
                <param-value>/vues/infos.jsp</param-value>
            </init-param>
            <init-param>
                <param-name>urlPanier</param-name>
                <param-value>/vues/panier.jsp</param-value>
            </init-param>
            <init-param>
                <param-name>urlPanierVide</param-name>
                <param-value>/vues/paniervide.jsp</param-value>
            </init-param>
            <init-param>
                <param-name>urlRecherche</param-name>
                <param-value>/vues/recherche.jsp</param-value>
            </init-param>
            <init-param>
                <param-name>urlDebug</param-name>
                <param-value>/vues/debug.jsp</param-value>
            </init-param>
        </servlet>
        <servlet-mapping>
            <servlet-name>webarticles</servlet-name>
            <url-pattern>/main</url-pattern>
        </servlet-mapping>
            <welcome-file-list>
            <welcome-file>/vues/index.jsp</welcome-file>
        </welcome-file-list>    
    </web-app>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    /*****************************
    *  server.xml
    *****************************/
     
    <Context path="/jeBouquine" reloadable="true" docBase="C:\workspace\jeBouquine" workDir="C:\workspace\jeBouquine\work" />

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 856
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 856
    Points : 34 380
    Points
    34 380
    Par défaut
    C'est ton serveur d'appli qui s'en occupe normalement...

  3. #3
    Membre éclairé

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2002
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2002
    Messages : 346
    Points : 737
    Points
    737
    Par défaut
    En effet, le serveur d'application - ou le conteneur de servlet si tu n'as pas de serveur d'application - s'occupe de généré les servelet correspondant aux JSP.

    Le comportement de génération dépend donc du serveur d'application ou du conteneur de servlet. Je sais que par défaut websphere et tomcat ne gardent pas les .java généré, il faut les configurer si on veut y avoir accés.

    Donc dit nous ce que tu utilise, quelqu'un pourra ensuite t'indiquer comment les garder

  4. #4
    Membre habitué Avatar de semaj_james
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 193
    Points : 139
    Points
    139
    Par défaut
    J'utilise Tomcat 5.0 et Eclipse

    Le probleme c'est quand je modifie le conteneur (Webarticles.java).
    Si je change des titres ou des actions cela est modifié mais si je veux créer une nouvelle action il me dit qu'elle n'existe pas.

    Dans le work il y a les .java issues des JSP sauf la nouvelle page que je viens de créer. C'est un projet que j'ai importé et j'ai voulu créer de nouvelles pages.

    Est ce normal qu'il n'y ai pas dans le work le .java de ma nouvelle page ?

    J'ai voulu ajouter la page recherche.jsp et créer 2 actions supplémentaires: recherche et recherchejsp. Seules ces 2 actions ne fonctionnent pas. Pourquoi ?

    Le conteneur: Webarticles.java:
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
     
    package istia.st.articles.web;
     
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.Hashtable;
    import java.util.List;
    import istia.st.articles.domain.Achat;
    import istia.st.articles.dao.Article;
    import istia.st.articles.domain.IArticlesDomain;
    import istia.st.articles.domain.Panier;
    import istia.st.articles.exception.UncheckedAccessArticlesException;
     
    import javax.servlet.ServletConfig;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
     
    import org.springframework.beans.factory.xml.XmlBeanFactory;
    import org.springframework.core.io.ClassPathResource;
     
    /**
     * 
     *  
     */
    public class WebArticles extends HttpServlet {
     
        // champs privés
        private ArrayList erreurs = new ArrayList();
        private IArticlesDomain articlesDomain = null;
        private final String URL_MAIN = "urlMain";
        private final String URL_ERREURS = "urlErreurs";
        private final String URL_LISTE = "urlListe";
        private final String URL_INFOS = "urlInfos";
        private final String URL_PANIER = "urlPanier";
        private final String URL_PANIER_VIDE = "urlPanierVide";
        private final String URL_DEBUG = "urlDebug";
        private final String URL_RECHERCHE ="urlRecherche";
        private final String SPRING_CONFIG_FILENAME = "springConfigFileName";
        private final String[] parameters =
            {
                URL_MAIN,
                URL_ERREURS,
                URL_LISTE,
                URL_INFOS,
                URL_PANIER,
                URL_PANIER_VIDE,
                URL_RECHERCHE,
                URL_DEBUG,
                SPRING_CONFIG_FILENAME };
        private ServletConfig config;
        private final String ACTION_LISTE = "liste";
        private final String ACTION_RECHERCHEJSP = "recherchejsp";
        private final String ACTION_RECHERCHE = "recherche";
        private final String ACTION_PANIER = "panier";
        private final String ACTION_ACHAT = "achat";
        private final String ACTION_INFOS = "infos";
        private final String ACTION_RETIRER_ACHAT = "retirerachat";
        private final String ACTION_VALIDATION_PANIER = "validationpanier";
        private String urlActionListe;
        private final String lienActionListe = "Liste des articles";
        private String urlActionRecherche;
        private final String lienActionRech = "Résultat de la recherche";
        private final String lienActionRechJSP = "Rechercher un livre";
        private String urlActionPanier;
        private final String lienActionPanier = "Voir le panier  !!!!!";
        private String urlActionValidationPanier;
        private final String lienActionValidationPanier = "Valider le panier";
        private Hashtable hActionListe = new Hashtable(2);
        private Hashtable hActionPanier = new Hashtable(2);
        private Hashtable hActionValidationPanier = new Hashtable(2);
        private Hashtable hActionRech = new Hashtable(2);
     
     
        /* (non-Javadoc)
         * @see javax.servlet.GenericServlet#init()
         */
        public void init() {
            // on récupère les paramètres d'initialisation de la servlet
            config = getServletConfig();
            String param = null;
            for (int i = 0; i < parameters.length; i++) {
                param = config.getInitParameter(parameters[i]);
                if (param == null) {
                    // on mémorise l'erreur
                    erreurs.add(
                        "Paramètre ["
                            + parameters[i]
                            + "] absent dans le fichier [web.xml]");
                }
            }
            // des erreurs ?
            if (erreurs.size() != 0) {
                return;
            }
            // on crée un objet IArticlesDomain d'accès à la couche métier
            try {
                articlesDomain =
                    (IArticlesDomain)
                        (
                            new XmlBeanFactory(
                                new ClassPathResource(
                                    (String) config.getInitParameter(
                                        SPRING_CONFIG_FILENAME)))).getBean(
                        "articlesDomain");
            } catch (Exception ex) {
                // on mémorise l'erreur
                erreurs.add(
                    "Erreur de configuration de l'accès aux données : "
                        + ex.toString());
                return;
            }
            // on mémorise certaines url de l'application
            hActionListe.put("href", "?action=" + ACTION_LISTE);
            hActionListe.put("lien", lienActionListe);
     
            hActionRech.put("href", "?action=" + ACTION_RECHERCHEJSP);
            hActionRech.put("lien", lienActionRechJSP);
     
     
            hActionPanier.put("href", "?action=" + ACTION_PANIER);
            hActionPanier.put("lien", lienActionPanier);
     
            hActionValidationPanier.put(
                "href",
                "?action=" + ACTION_VALIDATION_PANIER);
            hActionValidationPanier.put("lien", lienActionValidationPanier);
     
            // c'est fini
            return;
        }
     
        /* (non-Javadoc)
         * @see javax.servlet.http.HttpServlet#doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
         */
        public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {
            // on vérifie comment s'est passée l'initialisation de la servelet
            if (erreurs.size() != 0) {
                // a-t-on l'url de la page d'erreurs ?
                if (config.getInitParameter(URL_ERREURS) == null) {
                    throw new ServletException(erreurs.toString());
                }
                // on affiche la page des erreurs
                request.setAttribute("erreurs", erreurs);
                request.setAttribute("actions", new Hashtable[] {
                });
                getServletContext()
                    .getRequestDispatcher(config.getInitParameter(URL_ERREURS))
                    .forward(request, response);
                // fin
                return;
            }
            // on traite l'action
            String action = request.getParameter("action");
            if (action == null) {
                // liste des articles
                doListe(request, response);
                return;
            }
            if (action.equals(ACTION_LISTE)) {
                // liste des articles
                doListe(request, response);
                return;
            }
            if (action.equals(ACTION_INFOS)) {
                // infos sur un article
                doInfos(request, response);
                return;
            }
            if (action.equals(ACTION_ACHAT)) {
                // achat d'un article
                doAchat(request, response);
                return;
            }
            if (action.equals(ACTION_PANIER)) {
                // affichage du panier
                doPanier(request, response);
                return;
            }
            if (action.equals(ACTION_RETIRER_ACHAT)) {
                // suppression d'un article du panier
                doRetirerAchat(request, response);
                return;
            }
            if (action.equals(ACTION_VALIDATION_PANIER)) {
                // validation du panier
                doValidationPanier(request, response);
                return;
            }
            if (action.equals(ACTION_RECHERCHEJSP)) {
                // donne la page de recherche
                doRecherchePage(request, response);
                return;
            }
     
            if (action.equals(ACTION_RECHERCHE)) {
                // recherche des articles par ISBN
                doRecherche(request, response);
                return;
            }
            // action inconnue
            ArrayList erreurs = new ArrayList();
            erreurs.add("action [" + action + "] inconnue");
            // on affiche la page des erreurs
            request.setAttribute("actions", new Hashtable[] { hActionListe });
            afficheErreurs(request, response, erreurs);
            // fin
            return;
        }

  5. #5
    Membre habitué Avatar de semaj_james
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 193
    Points : 139
    Points
    139
    Par défaut
    suite du code:
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
     
        /**
         * @param request : la requête du client
         * @param response : la réponse au client
         * @param erreurs : la liste d'erreurs à afficher
         * @throws ServletException
         * @throws IOException
         */
        private void afficheErreurs(
            HttpServletRequest request,
            HttpServletResponse response,
            ArrayList erreurs)
            throws ServletException, IOException {
            // on affiche la page des erreurs
            request.setAttribute("erreurs", erreurs);
            getServletContext()
                .getRequestDispatcher(config.getInitParameter(URL_ERREURS))
                .forward(request, response);
            // fin
            return;
        }
     
        /**
         * @param request : la requête du client
         * @param response : la réponse au client
         * @throws IOException
         * @throws ServletException
         */
        private void doListe(
            HttpServletRequest request,
            HttpServletResponse response)
            throws IOException, ServletException {
     
            // la liste des erreurs
            ArrayList erreurs = new ArrayList();
            // on demande la liste des articles
            List articles = null;
            try {
                articles = articlesDomain.getAllArticles();
            } catch (UncheckedAccessArticlesException ex) {
                // on mémorise l'erreur
                erreurs.add(
                    "Erreur lors de l'obtention de tous les articles : "
                        + ex.toString());
            }
            // des erreurs ?
            if (erreurs.size() != 0) {
                // on affiche la page des erreurs
                request.setAttribute("erreurs", erreurs);
                request.setAttribute("actions", new Hashtable[] { hActionListe});
                getServletContext()
                    .getRequestDispatcher(config.getInitParameter(URL_ERREURS))
                    .forward(request, response);
                // fin
                return;
            }
            // on affiche la liste des articles
            request.setAttribute("listarticles", articles);
            request.setAttribute("message","");
     
            request.setAttribute("actions", new Hashtable[] { hActionPanier });
            getServletContext()
                .getRequestDispatcher(config.getInitParameter(URL_LISTE))
                .forward(request, response);
            // fin
            return;        
        }
     
        /**
         * @param request : la requête du client
         * @param response : la réponse au client
         * @throws IOException
         * @throws ServletException
         */
        private void doRecherchePage(
            HttpServletRequest request,
            HttpServletResponse response)
            throws IOException, ServletException {
     
            request.setAttribute("actions", new Hashtable[] { hActionRech });
            getServletContext()
                .getRequestDispatcher(config.getInitParameter(URL_RECHERCHE))
                .forward(request, response);
            // fin
            return;        
        }
     
        /**
         * @param request : la requête du client
         * @param response : la réponse au client
         * @throws IOException
         * @throws ServletException
         */
     
    private void doRecherche(
            HttpServletRequest request,
            HttpServletResponse response)
            throws IOException, ServletException {
            // la liste des erreurs
            ArrayList erreurs = new ArrayList();
            // on récupère l'isbn demandé
            String strId = request.getParameter("auteur");
            // qq chose ?
            if (strId == null) {
                // pas normal
                erreurs.add("action incorrecte([infos,id=null]");
                request.setAttribute("actions", new Hashtable[] { hActionRech });
                afficheErreurs(request, response, erreurs);
                return;
            }
     
            // on demande la liste des articles
            List articles = null;
            try {
                articles = articlesDomain.getArticleByAuteur(strId);
            } catch (UncheckedAccessArticlesException ex) {
                // on mémorise l'erreur
                erreurs.add(
                    "Erreur lors de l'obtention de la recherche des articles : "
                        + ex.toString());
            }
            // des erreurs ?
            if (erreurs.size() != 0) {
                // on affiche la page des erreurs
                request.setAttribute("erreurs", erreurs);
                request.setAttribute("actions", new Hashtable[] { hActionRech });
                getServletContext()
                    .getRequestDispatcher(config.getInitParameter(URL_ERREURS))
                    .forward(request, response);
                // fin
                return;
            }
            // on affiche la liste des articles
            request.setAttribute("listarticles", articles);
            request.setAttribute("message","");
            request.setAttribute("actions", new Hashtable[] { hActionRech });
            getServletContext()
                .getRequestDispatcher(config.getInitParameter(URL_LISTE))
                .forward(request, response);
            // fin
            return;
     
        }
     
    }

  6. #6
    zev
    zev est déconnecté
    Membre actif
    Inscrit en
    Octobre 2004
    Messages
    204
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 204
    Points : 220
    Points
    220
    Par défaut
    A mon avis ça vient pas du code mais de la config de ton projet.

    Si tu fais click droit sur le projet, properties, java build path, qu'est ce que tu vois dans l'onglet Source ?

  7. #7
    Membre habitué Avatar de semaj_james
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 193
    Points : 139
    Points
    139
    Par défaut
    Citation Envoyé par zev
    A mon avis ça vient pas du code mais de la config de ton projet.

    Si tu fais click droit sur le projet, properties, java build path, qu'est ce que tu vois dans l'onglet Source ?
    Mon Projet s'appelle jeBouquine. J'ai donc:

    jeBouquine/WEB-INF/src
    output folder: (Default output folder)
    Included: (All)
    Excluded: (None)

    jeBouquine/work
    output folder: jeBouquine/work
    Included: (All)
    Excluded: (None)

    La case Allow output folder for sources folder est cochée.

    Default output folder:
    jeBouquine/WEB-INF/classes

  8. #8
    Membre habitué
    Avatar de dtateur
    Inscrit en
    Mars 2004
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 106
    Points : 140
    Points
    140
    Par défaut
    Assure toi que tomcat utilise un JDK au lieu d'un JRE.
    C'est souvent la cause de ce genre de probleme.


    as tu des messages d'erreurs ?

Discussions similaires

  1. [EasyPHP] msg "impossible de recuperer les hash des fichiers"
    Par happyboon dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 22/11/2012, 15h31
  2. Réponses: 2
    Dernier message: 10/07/2009, 09h15
  3. [Weblogic 7] obtenir le code java des jsp précompilées
    Par Christophe P. dans le forum Weblogic
    Réponses: 2
    Dernier message: 03/04/2008, 17h11
  4. Réponses: 28
    Dernier message: 09/01/2007, 16h30
  5. Chmod Impossible de changer les droits des fichiers
    Par Franciske dans le forum Sécurité
    Réponses: 2
    Dernier message: 09/10/2006, 00h58

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