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 :

[débutant servlet][j2ee][Tomcat?] j2ee suffisant pour développer des servlets?


Sujet :

Servlets/JSP Java

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 26
    Points : 12
    Points
    12
    Par défaut [débutant servlet][j2ee][Tomcat?] j2ee suffisant pour développer des servlets?
    Bonjour!
    Je suis débutante en servlet et j'aurais bien besoin d'aide :

    Je suis chargée de développer un servlet dont l'unique fonction est de réceptionner un formulaire HTML (enfin surtout ses paramètres) et d'effectuer un traitement pur Java (analyse d'un text area, changement de sa valeur, retour au client).

    C'est la première fois que je développe un servlet et j'ai lutté pour comprendre de quels outils j'ai besoin.
    J'ai installé le j2ee sdk 1.4, et je développe sous Eclipse (auquel j'ai ajouté la lib pour les servlets). J'ai lancé le serveur par "Programmes>Sun>AppServer>Demarrer serveur par défaut".
    J'ai voulu tester une 1ere servlet HelloWorld (placé dans "Sun\AppServer\domains\domain1\docroot\Julia")

    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
    import java.io.*;
     
    import javax.servlet.*;
    import javax.servlet.http.*;
     
    public class JuliaServlet extends HttpServlet
    {
        public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException,IOException
        {
            res.setContentType("text/html");
            PrintWriter out=res.getWriter();
            out.println("<html><head></head><body>");
            out.println("Hello world!!");
            out.println("</body></html>");
        }
    }
    que j'ai compilé (par Eclipse) et dont j'ai posé la classe dans le rép. dit ci-dessus Je la teste :"http://localhost:8080/Julia/JuliaServlet", le nav. me rend l'erreur: 404.
    On m'a dit qu'il fallait déclarer le service mais où???

    (J'ai essayé de mettre dans "C:\Archivos de programa\Sun\AppServer\domains\domain1\config\default-web.xml":

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
      <servlet>
        <servlet-name>JuliaServlet</servlet-name>
        <servlet-class>JuliaServlet</servlet-class>
      </servlet>
     
      <servlet-mapping>
            <servlet-name>JuliaServlet</servlet-name>
            <url-pattern>/Julia/JuliaServlet</url-pattern>
      </servlet-mapping>
    mais ça change rien )

    J'ai ensuite écrit un formulaire f1:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <html>
     <body>
      test ok
      <servlet code="JuliaServlet" codebase="http://localhost:8080/Julia/">
      frame no soportada
      </servlet>
      <form name="f1" action="f1" method="GET">
      </form>
      </body>
    </html>
    A l'exécution (directe par double click sur le fichier), pas de Hello World! (et le "frame no soportada")
    A l'exécution (par le serveur: "http://localhost:8080/Julia/f1.html"), de nouveau erreur 404. Page non trouvée?

    J'ai ensuite écrit le formulaire f2:

    <html>
    <body>
    test ok
    <form name="f2" action="http://localhost:8080/Julia/JuliaServlet" method="GET">
    </form>
    </body>
    </html>

    Même résultat.

    Mes questions sont les suivantes (pardon si c'est stupide mais j'ai réellement cherché avant de poster):

    1) ai-je besoin de Tomcat (et Apache) pour exécuter ma servlet? Rappelons que j'ai accès par le j2ee a localhost:8080.

    2) les 3 manières dont j'ai testé mon fichier sont celles que j'ai pu trouvées en me renseignant. Sont-elles valides? Quelles sont les différences?

    3) comment déclarer un domaine (pour l'instant je travaille complètement dans les dossiers du j2ee), déclarer ma servlet (quel fichier config.xml par exemple?)

    (PS: je travaille sous Windows XP Pro)



    Merci infiniment!!

    Julia

  2. #2
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut
    Pour le bon formulaire, je ne puis te renseigner mais pour ma part, j'utilise celui de F2

    Par contre pour le déploiement d'une servlet sur Tomcat, deux cas sont possibles :

    1/ Tu mets ton appli dans le dossier webapps.
    2/ Tu crées un contexte auprès du serveur dans le config.xml pour accéder directement au dossier ou se trouve ton projet.

    Dans les deux cas, Eclipse peut, normalement faire automatiquement les deux solutions.

    Si tu utilises Sun Application Server (celui fourni avec la J2EE), tu dois donc avoir un système de fonctionnement identique. Par contre je ne le connais pas réellement ... et Tomcat sera surement plus documenté je pense (cf. le nombre impressionnant d'exemple sur Internet)

    Ensuite, tu déclares tes servlets et jsp dans un web.xml (et non default-web.xml qui doit etre un exemple pour aider au déploiement) que tu places à la racine de ton WEB-INF pour qu'il soit pris en compte par le serveur.

    Sinon d'un point de vue contenu, je pense que les mapping et appels sont corrects ...

    Tiens nous au courant de ton évolution

    PS: Pour le programme que tu veux faire, la J2EE n'est pas necessaire. En installant Tomcat, il te fournit automatiquement les librairies necessaires (servlet.jar). En outre, il est, je pense bien plus intégré à Eclipse que Sun AS avec le plugin de Sysdeo.

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 26
    Points : 12
    Points
    12
    Par défaut
    Merci!
    De toute façon pour j2ee, il n'arrive même pas à m'exécuter les exemples fournis dans le soft, le deploy du hello (voir [FONT=&quot]http://docs.sun.com/app/docs/doc/819...6rh04c2?a=view[/FONT]) me génère un fichier vide. Et effectivement, la seule doc. dicponible quasiment est celle de Sun.
    Donc désinstallation de j2ee (de toute façon j'ai aussi des problèmes avec la compilation! En ligne de commande, il ne me reconnaît pas les classes HttpServlet)!

    J'en reviens à ce que je voulais faire initialement: utiliser Tomcat. Ce que je n'arrive pas à définir c'est:
    1) si je prend la version standalone ou la couplée avec Apache (que je n'ai jamais installé)?
    2) Quelles versions prendre?
    On m'a dit que les versions 2.xx d'Apache n'étaient pas sûres...
    D'autre part, y a la compatibilité avec le Java... .
    Mais les versions 1.35.* pour windows me génère une erreur (instruction interdite)
    3) Guide d'installation sur windows? (il y en a mais pour les versions 2.0.*) donc si pb de sécurité, j'aurais bien besoin d'un tuto.

    Bref, merci beaucoup, et vraiment c'est pas simple les serveurs !

    Julia

  4. #4
    Membre éclairé Avatar de BizuR
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    688
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 688
    Points : 757
    Points
    757
    Par défaut


    Euh, pour ce que tu veux faire, Apache, qui est un serveur web basique ne sert absolument a rien ... sauf si tu parle du terme Apache Tomcat qui est en fait Tomcat (c'est juste que le projet appartient a Apache)

    La version dépend de ta JDK, si tu es sur du 1.5, prend la derniere version de Tomcat (5.5.x je crois), ca fonctionnera parfaitement. Seul pré-requis : installe quand même une JDK auparavant ^^

    Guide d'installation = Tu double-cliques sur l'executable et suis le processus d'installation... et oualah, tout est fait

    Si tu as d'autres questions ... n'hesites pas

    EDIT: Procures toi le plugin Sysdeo sur Eclipse pour développer à l'aide d'Eclipse plus facilement... il existe alors des tutos simples et interessants sur DVP.com Bon courage ^^

  5. #5
    Membre à l'essai
    Inscrit en
    Septembre 2005
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 26
    Points : 12
    Points
    12
    Par défaut
    Merci encore!

    Pour ce qui est du couplage Apache daemon et Apache Tomcat, c'est parce qu'en production ça marchera comme ça. Je voudrais être le plus possible proche des conditions réelles

    Sinon, effectivement j'y arrive mieux avec Tomcat, j'en suis seulement à l'installation (http://www.coreservlets.com/Apache-T...0-and-4.0.html).
    J'ai pris la version 5.0 de Tomcat pour la compatibilité Java (1.4).

    L'installation décrite dans le tutoriel (très complet et bien organisé, en anglais) est pour un Tomcat standalone comme tu proposes toi aussi.
    En fait, mon souci sera résolu je crois quand je saurai ce que ça change à part les URL...

    Merci!

    Julia

Discussions similaires

  1. [J2EE] Par où commencer pour développer une application ?
    Par nihalm dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 18/07/2011, 11h11
  2. Réponses: 3
    Dernier message: 07/11/2008, 10h41
  3. [MySQL] Classe pour développer des formulaire et gérer la BdD ?
    Par sami_c dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 23/11/2005, 11h29
  4. Réponses: 11
    Dernier message: 03/11/2005, 17h59
  5. [Logiciel] Outil pour développer des jeux vidéos
    Par Kiri dans le forum EDI et Outils pour Java
    Réponses: 4
    Dernier message: 16/06/2004, 20h29

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