Partage
  • Partager sur Facebook
  • Partager sur Twitter

Cours Java EE - Vos questions

    14 janvier 2016 à 1:22:28

    Le fichier bonjour.jsp ne doit pas se situer dans le repertoire lib de WEB-INF.... le dossier lib est destine a contenir les librairies utilisees dans l'application, les fichiers .jar.Sinon pour recuperer la valeur d'un attribut dont le nom est passe en parametre,tu utilises ${param.name}
    • Partager sur Facebook
    • Partager sur Twitter
      14 janvier 2016 à 11:58:12

      Bonjour,
      Je suis au tout début du cours 'Développez des sites web avec Java EE'.
      Je n'ai pas pu configurer Tomcat dans Eclipse, puisque les versions ont pas mal évolué. J'ai Tomcat 9.0 et Eclipse Mars.1.

      Pour suivre le cours, j'essaie de m'adapter et je crée un Java Project. Mais quelque soit le JRE que je sélectionne, l'arborescence du projet ne correspond pas du tout à celle présentée dans le cours. Et l'index.html que j'ai créé ne semble pas s'ouvrir dans l'encart dédié aux lignes de code...

      Sauriez-vous me dire où est le problème et comment le résoudre, svp ? Merci.
      Pascale
      • Partager sur Facebook
      • Partager sur Twitter
        14 janvier 2016 à 14:26:28

        Merci beaucoup patiecco, en fait je m'étais trompée les *.jsp étaient bien dans Web-INF et pas dans lib mais merci pour la précision et la bonne syntaxe pour EL.

        Mais du coup je ne comprends pas pourquoi dans la vidéo de Mathéo (Utiliser les Expression Language dans les JSP) il tape simplement ${name} et récupère bien la valeur de ce paramètre alors que je n'y parvient pas.

        Au final ce n'est pas très grave puisque ${param.name} fonctionne.

        Encore Merci.

        • Partager sur Facebook
        • Partager sur Twitter
          16 janvier 2016 à 16:51:42

          Bonjour hommDeLaMontagne.

          Comment appelles tu ta page ? Je suppose localhost:8080/nomdetonappli/bonjour/Test1 ?

          • Partager sur Facebook
          • Partager sur Twitter
            16 janvier 2016 à 16:54:46

            Bonjour PascaleB.

            Crées un web dynamic project.

            Bien sûr un java project est ok mais il faudrait que tu rajoutes pas mal de fichiers pour arriver à une arborescenece satisfaisante.

            • Partager sur Facebook
            • Partager sur Twitter
              16 janvier 2016 à 20:36:16

              Merci footsteps pour ta réponse, mais je n'ai pas l'option du web dynamic project dans Project...
              J'ai oublié de le préciser.

              • Partager sur Facebook
              • Partager sur Twitter
                20 janvier 2016 à 17:21:50

                Bonjour,

                Je suis le tuto sur le cours de java EE. J'ai un problème au niveau de la persistance des données. J'ai installé glassfish et rapatrié les classes nécessaires à l'inscription d'un client ( la JSP inscription.jsp, le bean Utilisateur, le DAO UtilisateurDao, les classes DAOException et FormValidationException, l’objet métier InscriptionForm et enfin la servlet Inscription) et son rajout dans la base de données. Seulement quand j'essaie d'inscrire un client j'ai tout le temps le message d'échec de l'inscription, même si le client n'existe pas dans ma base de données. j'ai fait quelques tests pour trouver la source de l'erreur. il s'avère que après l'appel de la fonction ValidationEmail(), ma map "erreurs" n'est plus vide, ce qui sous-entend que cette fonction a généré une erreur, je vous présente le code la fonction en question

                public void validationEmail( String email ) throws Exception {
                        if ( email != null ) {
                            if ( !email.matches( "([^.@]+)(\\.[^.@]+)*@([^.@]+\\.)+([^.@]+)" ) ) {
                                throw new Exception( "Merci de saisir une adresse mail valide." );
                            } else if ( utilisateurDao.trouver( email ) != null ) {
                                throw new Exception( "Cette adresse email est déjà utilisée,merci d'en choisir une autre." );
                            }
                        } else {
                            throw new Exception( "Ce champ est obligatoire" );
                        }
                    }

                je me rends compte que dans tous les cas, la fonction retourne "null", je ne sais donc pas si ce retour est du à l'initialisation du bean utilisateur à null ou au fait qu'elle capture une "NotResultException". ceci dit logiquement si c'est du à l'initialisation du bean utilisateur à null, tout devrait bien se passer et ma map "erreurs" devrait être empty.

                Je fais donc un dernier test pour savoir si ce problème n'est pas lié à la connexion à la BD, j'essaie l'inscription d'un utilisateur sans l'appel à la fonction trouver(), à ce moment la j'ai une "EJBException". Est ce que quelqu'un pourrait m'apporter plus de lumière par rapport à tout cela.

                Dsl d'avoir été aussi long, mais j'essaie d’être le plus clair possible, et encore je ne sais pas si ça a suffit.

                pour terminer je vous fourni le contenu de la console

                Avertissement: A system exception occurred during an invocation on EJB UtilisateurDao method public solartPredict.entities.Utilisateur SolarPredict_jpa.DAO.UtilisateurDao.trouver(java.lang.String) throws SolarPredict_jpa.DAO.DAOException
                javax.ejb.EJBException
                	at com.sun.ejb.containers.BaseContainer.processSystemException(BaseContainer.java:5070)
                	at com.sun.ejb.containers.BaseContainer.completeNewTx(BaseContainer.java:4968)
                	at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:4756)
                	at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1955)
                	at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1906)
                	at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:198)
                	at com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:84)
                	at com.sun.proxy.$Proxy107.trouver(Unknown Source)
                	at SolarPredict_jpa.DAO.__EJB31_Generated__UtilisateurDao__Intf____Bean__.trouver(Unknown Source)
                	at solartPredict.entities.TraiteInscription.validationEmail(TraiteInscription.java:86)
                	at solartPredict.entities.TraiteInscription.inscrireUtilisateur(TraiteInscription.java:153)
                	at SolarPredict_jpa.Servlet.SolarPredict1.doPost(SolarPredict1.java:41)
                	at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
                	at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
                	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523)
                	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
                	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
                	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)
                	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
                	at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)
                	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)
                	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:332)
                	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:233)
                	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
                	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
                	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
                	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
                	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
                	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
                	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
                	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
                	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
                	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
                	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
                	at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
                	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
                	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
                	at java.lang.Thread.run(Thread.java:745)
                Caused by: java.lang.VerifyError: Expecting a stackmap frame at branch target 18
                Exception Details:
                  Location:
                    solartPredict/entities/Utilisateur._persistence_isAttributeFetched(Ljava/lang/String;)Z @4: ifnull
                  Reason:
                    Expected stackmap frame at this location.
                  Bytecode:
                    0000000: 2ab4 0076 c600 0e2a b400 762b b600 dc99
                    0000010: 0007 04a7 0004 03ac                    
                	at java.lang.Class.forName0(Native Method)
                	at java.lang.Class.forName(Class.java:278)
                	at org.eclipse.persistence.internal.security.PrivilegedAccessHelper.getClassForName(PrivilegedAccessHelper.java:88)
                	at org.eclipse.persistence.descriptors.ClassDescriptor.convertClassNamesToClasses(ClassDescriptor.java:1211)
                	at org.eclipse.persistence.sessions.Project.convertClassNamesToClasses(Project.java:356)
                	at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:321)
                	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:151)
                	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:207)
                	at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:202)
                	at com.sun.enterprise.container.common.impl.EntityManagerWrapper._getDelegate(EntityManagerWrapper.java:197)
                	at com.sun.enterprise.container.common.impl.EntityManagerWrapper.createQuery(EntityManagerWrapper.java:424)
                	at SolarPredict_jpa.DAO.UtilisateurDao.trouver(UtilisateurDao.java:35)
                	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
                	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                	at java.lang.reflect.Method.invoke(Method.java:606)
                	at org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1052)
                	at org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1124)
                	at com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:5243)
                	at com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:615)
                	at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:797)
                	at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:567)
                	at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doAround(SystemInterceptorProxy.java:157)
                	at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:139)
                	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
                	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                	at java.lang.reflect.Method.invoke(Method.java:606)
                	at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:858)
                	at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:797)
                	at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:367)
                	at com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:5215)
                	at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:5203)
                	at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:190)
                	... 32 more




                -
                Edité par batanga 20 janvier 2016 à 17:55:31

                • Partager sur Facebook
                • Partager sur Twitter
                  20 janvier 2016 à 22:33:10

                  Bonjour

                  Je suis débutant en programmation Java. Je suis en train de réaliser mon propre programme Java avec Eclipse.

                  Mon problème est le suivant, lorsque j’exécute mon programme depuis éclipse pas de problème cela fonctionne, si je crée un point jar depuis eclipse enregistrer dans le dossier de mon projet : pas de problème non plus cela fonctionne.

                  Par contre si je veux exécuter mon .jar depuis un autre dossier ou un autre PC, mon programme se lance mais certaines chose ne fonctionne pas.

                  Je m'explique, mon programme utilise la "programmation événementielle" donc pour en revenir mon problème ma Jframe s'affiche bien ainsi que les panel ainsi de suite.

                  Par contre certaines mes images de bouton ne s'affiche plus, mon programme ne réalise pas la lecture d'un fichier et l'affichage dans un JTEXTFIELD.

                  Je me doute qu'il s'agit d'un probleme de version JDK

                  Comment peut ton regler le fonctionnement de mon progamme depuis n'importe quel dossier

                  Merci

                  • Partager sur Facebook
                  • Partager sur Twitter
                    21 janvier 2016 à 18:22:48

                    Salut. Non ce n'est pas lié à la version du JDK. Si les ressources(images,fichiers...) ne sont pas empaquetées dans ton JAR il faudra les placer dans le même répertoire que ton JAR pour que ça fonctionne normalement.

                    @batanga: j'ai le même problème que toi, désolé!

                    -
                    Edité par kulturman 21 janvier 2016 à 18:23:17

                    • Partager sur Facebook
                    • Partager sur Twitter
                      23 janvier 2016 à 15:25:30

                      Bonjour, j'essai de faire un serveur avec JEE permettant d'afficher et modifier les valeurs de mots ou de bits présents dans un automate (V570 de chez unitronic pour ne pas le citer).

                      Pour cela j'utilise Modbus TCP/IP afin de rapatrier les mots et bits de l'automate sur le PC via J2mod une API en java.

                      Pour utiliser cette API j'ai écrit un prog java contenant la méthode main(String[] args) et je récupère correctement les mots et bits de mon choix.

                      Maintenant je souhaiterai rendre visible ces mots et bits sur une page web et je ne sais pas comment transmettre ces valeurs de mots et bits à la servlet qui affiche ma page.

                      Si quelqu'un ou quelqu'une a une idée ?

                      Merci de l'attention que vous porterez à mon message.

                      • Partager sur Facebook
                      • Partager sur Twitter
                        24 janvier 2016 à 6:51:42

                        Bonjour, ça y est j'ai trouvé!!

                        C'est relativement simple : j'ai simplement fait un bean (ne contenant pas la méthode main(String[] args) qui lit les données par modbus que j'ai ensuite appelé ou fait exécuter par la servlet et c'est tout.

                        Désolé d'avoir encombré le forum pour pas grand chose.

                        • Partager sur Facebook
                        • Partager sur Twitter
                          29 janvier 2016 à 15:06:11

                          Bonjour a tous les developpeurs Java Web !

                          j'ai crée un site internet avec un formulaire de contact. lorsque je clique sur le bouton "envoyer" j'ai l'erreur ci-dessous :


                          HTTP ERROR 500

                          Problem accessing /EnvoiMail. Reason:

                          INTERNAL_SERVER_ERROR
                          Caused by:

                          java.lang.NullPointerException
                          at com.swm.monSite.MailDispacherServlet.processRequest(MailDispacherServlet.java:143)
                          at com.swm.monSite.MailDispacherServlet.doPost(MailDispacherServlet.java:188)
                          at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
                          at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
                          at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
                          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
                          at com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
                          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
                          at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128)
                          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
                          at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
                          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
                          at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
                          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
                          at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
                          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
                          at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
                          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
                          at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
                          at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
                          at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
                          at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
                          at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
                          at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
                          at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
                          at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
                          at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
                          at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
                          at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
                          at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:512)
                          at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
                          at org.mortbay.jetty.Server.handle(Server.java:326)
                          at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
                          at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)
                          at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)
                          at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
                          at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
                          at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
                          at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)






                          code de mon bean :

                          import java.util.Properties;
                          import java.util.logging.Level;
                          import java.util.logging.Logger;
                          import javax.ejb.Stateless;
                          import javax.mail.Message;
                          import javax.mail.Session;
                          import javax.mail.Transport;
                          import javax.mail.internet.InternetAddress;
                          import javax.mail.internet.MimeMessage;



                          @Stateless
                          public class mailSenderBean {

                          public void sendEmail(String fromEmail, String username, String password, String toEmail, String subject, String message){


                          try {
                          Properties props = System.getProperties();
                          props.setProperty("mail.smtp.host", "smtp.gmail.com");
                          props.setProperty("mail.smtp.auth", "true");
                          props.setProperty("mail.smtp.port", "465");
                          props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
                          props.setProperty("mail.smtp.socketFactory.port", "465");
                          props.setProperty("mail.smtp.socketFactory.fallback", "false");


                          Session mailSession = Session.getDefaultInstance(props, null);
                          mailSession.setDebug(true);

                          Message mailMessage = new MimeMessage(mailSession);


                          mailMessage.setFrom(new InternetAddress(fromEmail));
                          mailMessage.setRecipient(Message.RecipientType.TO, new InternetAddress(toEmail));
                          mailMessage.setContent(message, "text/html");
                          mailMessage.setSubject(subject);


                          Transport transport = mailSession.getTransport("smtp");
                          transport.connect("smtp.gmail.com", username, password);

                          transport.sendMessage(mailMessage, mailMessage.getAllRecipients());

                          } catch (Exception ex) {
                          Logger.getLogger(mailSenderBean.class.getName()).log(Level.SEVERE, null, ex);
                          }





                          code de ma servlet :

                          import java.io.IOException;
                          import java.io.PrintWriter;
                          import javax.ejb.EJB;
                          import javax.servlet.ServletException;
                          import javax.servlet.annotation.WebServlet;
                          import javax.servlet.http.HttpServlet;
                          import javax.servlet.http.HttpServletRequest;
                          import javax.servlet.http.HttpServletResponse;

                          import com.swm.bean.mailSenderBean;


                          @WebServlet(name = "MailDispacherServlet", urlPatterns = {"/MailDispacherServlet"})
                          public class MailDispacherServlet extends HttpServlet {

                          @EJB
                          private mailSenderBean mailSender;

                          protected void processRequest(HttpServletRequest request, HttpServletResponse response)
                          throws ServletException, IOException {
                          response.setContentType("text/html;charset=UTF-8");

                          String toEmail = request.getParameter("email");
                          String subject = request.getParameter("subject");
                          String message = request.getParameter("message");



                          String fromEmail = "xyz@gmail.com";
                          String username = "xyz";
                          String password = "gdgdg";



                          try (PrintWriter out = response.getWriter()) {
                          /* TODO output your page here. You may use following sample code. */

                          /* appel de notre bean d'envoi de message*/


                          mailSender.sendEmail(fromEmail, username, password, toEmail, subject, message);

                          //.........................................


                          out.println("<!DOCTYPE html>");
                          out.println("<html>");
                          out.println("<head>");
                          out.println("<title>Status mail !</title>"); 
                          out.println("</head>");
                          out.println("<body>");
                          out.println("<h1> Status Mail!!!</h1>");
                          out.println("<b>Votre message a bien été envoyé, nous allons vous contacter le plus tot possible !!!</b><br>");
                          out.println("Cliquez <a href='email.jsp'>ici</a> pour retournez !!!");
                          out.println("</body>");
                          out.println("</html>");
                          }
                          }


                          @Override
                          protected void doGet(HttpServletRequest request, HttpServletResponse response)
                          throws ServletException, IOException {
                          processRequest(request, response);
                          }


                          @Override
                          protected void doPost(HttpServletRequest request, HttpServletResponse response)
                          throws ServletException, IOException {
                          processRequest(request, response);
                          }


                          @Override
                          public String getServletInfo() {
                          return "Short description";
                          }// </editor-fold>

                          }


                          code JSP :

                          <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
                          <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

                          <!DOCTYPE html>
                          <html>
                          <head>
                          <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
                          <title> contact </title>
                          </head>
                          <body>
                          <form method="post" action="/EnvoiMail">
                          <table>
                          <tr>
                          <td align="left"><b>Email :</b></td>
                          <td>
                          <input type="email" name="email" size="50" align="left" />
                          </td>
                          </tr>
                          <tr>
                          <td align="left" ><b>Objet :</b></td>
                          <td>
                          <input type="text" name="subject" size="50">
                          </td>
                          </tr>
                          <tr>
                          <td ><b>Message : </b></td>
                          <td>
                          <textarea style="margin-top: 0px;" name="message" rows="15" cols="180"></textarea><br>
                          </td>
                          </tr>

                          <tr>
                          <td>
                          <input type="submit" value="Envoyer">
                          </td>
                          </tr>
                          </table>
                          </form>
                          </body>
                          </html>
                          • Partager sur Facebook
                          • Partager sur Twitter
                            29 janvier 2016 à 17:04:47

                            Bonjour,

                            Je démarre le cours

                             la commande @WebServlet("/test") crée un objet Servlet mapping  /test -> test

                            le code 

                            <servlet-mapping>

                                <servlet-name>Test</servlet-name>

                                <url-pattern>/bonjour</url-pattern>

                              </servlet-mapping>

                            est sans effet

                            j'ai donc : http://localhost:8080/test/test au lieu de http://localhost:8080/test/bonjour

                            une idée?

                            merci

                            • Partager sur Facebook
                            • Partager sur Twitter
                              1 février 2016 à 12:44:41

                              bonjour comment configurer le GWT dans netbeans
                              • Partager sur Facebook
                              • Partager sur Twitter
                              JTARS
                                3 février 2016 à 13:48:48

                                @Jean-LucRossiny
                                la commande @WebServlet("/test") s'appelle une annotation. elle sert à déclarer une servlet en précisant en paramètre son "url-pattern" ( ici test). elle remplace donc la section

                                <servlet>
                                
                                    <servlet-name>nom_servlet</servlet-name>
                                
                                    <servlet-class>packtage.nom_servlet</servlet-class>
                                
                                </servlet>
                                
                                <servlet-mapping>
                                
                                    <servlet-name>nom_servlet</servlet-name>
                                
                                    <url-pattern>/ton_url_pattern</url-pattern>
                                
                                </servlet-mapping>

                                dans ton web.xml et represente l'url pour joindre ta servlet par défaut. toutefois en cas d'utilisation des deux déclarations, il me semble bien que ta servlet pourra être contactée par les deux url. Mais évidement une seule suffit.

                                • Partager sur Facebook
                                • Partager sur Twitter
                                  3 février 2016 à 18:37:21

                                  Bonjour à tous,

                                  Je viens de commencer le cours sur Java EE. J'ai déjà un problème à la partie 1.3. J'ai installé Tomcat, je fais localhost :8080 et tout fonctionne très bien.

                                  Par contre, quand je crée un projet web dynamic, je suis toutes les étapes du cours et malgré ça, je ne trouve rien dans l'onglet server. Donc je suppose que je configure mal mon web dynamic.  Mais ça fait trois fois que je fais le tutoriel et impossible de voir mon serveur dans l'onglet server.

                                  Donc je vous pose la question : qu'est-ce que je fais mal ?

                                  A plus tard,

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    4 février 2016 à 0:01:42

                                    @thibautpoutEn supposant que tu as bien installé ton serveur. Fais un clic droit dans l'onglet serveur, puis New, puis serveur, tu dois voir ton serveur normalement, sélectionne le et fais finish.

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      4 février 2016 à 9:54:17

                                      Bonjour à toi:


                                      batanga a écrit:

                                      @thibautpoutEn supposant que tu as bien installé ton serveur. Fais un clic droit dans l'onglet serveur, puis New, puis serveur, tu dois voir ton serveur normalement, sélectionne le et fais finish.


                                      J'ai suivi tes conseils mais malheureusement je ne peux toujours pas sélectionner mon serveur tomcat. Lorsque je tente de faire la manipulation que tu m'indiques, je ne peux pas définir mon serveur mais je dois définir un nouveau serveur. Donc je ne sais pas ce que je ne fais pas bien puisque je suis exactement les étapes du tutoriels.

                                      Je vais préciser ce que je ne comprends pas dans le tutoriel JAVA EE

                                      Créez votre application web avec Java EE

                                        Dans la partie 1.3, le paragraphe "Le serveur Tomcat", il est expliqué comment créer un projet web dynamic. Après la photo "Mise en place de Tomcat - Étape 4", il nous est expliqué un paragraphe sur le contexte. J'ai à peu prés (je dirais même à visto de nas) compris pourquoi l'application ne marche pas puisque elle n'est pas sur le serveur tomcat. Cependant, que faut-il faire à cette étape ?

                                      • Seulement cliquer sur finish ?
                                      • Modifier la partie "Context directory" ?

                                      Je suis bloqué à cette partie et je ne peux pas du tout progresser. Je lance donc un appel à l'aide.

                                      Merci au prochain qui me répondra.

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        4 février 2016 à 12:16:31

                                        est ce que quand tu fais "New Runtime" tu vois ton serveur?

                                        Sinon ce que je peux te conseiller, c'est de désinstaller ton serveur et d'installer tomcat8 ( en supposant que tu as installé tomcat7 comme dans le tuto) et de refaire la manip en t'assurant de ne sauter aucune étape.

                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          4 février 2016 à 15:55:49

                                          Bonjour a tous,

                                          Voila ma problématique, je dois créer un systeme de gestion de maintenance assiste par ordinateur (GMAO)pour une entreprise dans le cadre de mon pfe, je souhaite développer cette application informatique multiposte avec  une base de donnée commune.
                                          Je pensais de developper sous java jee et avec sgbd postgresql 
                                          Que pensez vous?

                                          Merci d'avance pour vos réponses,

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            4 février 2016 à 19:07:49

                                            Salut batanga,

                                            J'ai fait la deuxième méthode que tu m'as dis.

                                            batanga a écrit:

                                            est ce que quand tu fais "New Runtime" tu vois ton serveur?

                                            Sinon ce que je peux te conseiller, c'est de désinstaller ton serveur et d'installer tomcat8 ( en supposant que tu as installé tomcat7 comme dans le tuto) et de refaire la manip en t'assurant de ne sauter aucune étape.

                                            Ca marche. Problème résolu!

                                            Je pense que pour ce forum il faudrait faire des sous forums par parties du cours. C'est un peu bouillon pour trouver les solutions.

                                            Merci encore.

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              5 février 2016 à 17:35:39

                                              Bonjour, 

                                              je viens d'installer eclipse pour JEE sur Ubuntu, j'ai le célèbre problème de erreur 404 la ressource demandée n'est pas disponible,

                                              j' ai chercher drs solution sur internet et j'ai essayer tous mais ca reste toujours le meme erreur .

                                              j'ai changer les permission de tous les fichier de tomcat chmod +wrx.

                                              j'ai copier de dossier ROOT/ de tomcat dans les meta donnée de eclipse

                                              j'ai essayer de changer le switch location de  use workspace meta donné à use tomcat installation mais eclipse ne donne pas la main pour modifier ça,

                                              s'ils vous qui plus de propositions ?

                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                8 février 2016 à 20:42:48

                                                Bonjour J'utilise un contrôleur par vue et modèle. Comment puis-je appeler un autre contrôleur à partir du résultat de la première vue.

                                                Je m'explique:

                                                1-Controleur1 appelle le modele1 et le Controleur1 achemine les données vers la vue1

                                                2-Lors du doPost, le Controleur1 reçoit la sélection de l'utilisateur (imaginez plusieurs lignes de données avec un checkbox sur chacune de ces lignes et que le l'utilisateur doit choisir une ligne grâce à ce checkbox). 

                                                Donc, J'aimerais appeler un autre contrôleur "Controleur2" qui recevra le choix de l'utilisateur et fera appel à un model2 pour retourner les detail vers une vue2

                                                Merci pour toutes vos réponses

                                                Spring 

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  12 février 2016 à 3:42:24

                                                  bonsoir quand je tape system.out.println("hello worl)" ensuite je fais run et ca me donne unable to launch pourquoi??? aider moi a peine la premiere lecon sur java et j'ai un preoblémd
                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    12 février 2016 à 10:28:59

                                                    si tu tapes vraiment
                                                     System.out.println("hello word");
                                                    au bon endroit, ça ne peut que marcher;
                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      14 février 2016 à 15:05:28

                                                      je pense que  dans ce forum chaqu'un ppose sa question mais personne ne repond.
                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        19 février 2016 à 21:41:55

                                                        Bonjour,

                                                        J'ai commencé le cours Java EE et je bloque au niveau de la base de données.

                                                        Pour faire simple, quand je met mon listener dans mon xml pour initialiser ma classe InitialisationDaoFactory, mon appli ne fonctionne plus, j'ai une erreur 404 pour toute mes pages, mais si je l'enlève tout fonctionne.

                                                        <listener>
                                                         <listener-class>
                                                          com.gaetan.pro.config.InitialisationDaoFactory
                                                         </listener-class>
                                                        </listener>

                                                        Je me suis renseigné sur le net, apparement ca pourrait venir d'un fichier tomcat mais je me sens un peu perdu à ce niveau.

                                                        Ca, c'est une partie de mes logs quand je met mon listener:

                                                        Grave: Exception lors de l'envoi de l'évènement contexte initialisé (context initialized) à l'instance de classe d'écoute (listener) com.gaetan.pro.config.InitialisationDaoFactory

                                                        java.lang.NullPointerException

                                                        at java.lang.Class.forName0(Native Method)

                                                        at java.lang.Class.forName(Unknown Source)

                                                        at com.gaetan.pro.dao.DAOFactory.getInstance(DAOFactory.java:58)

                                                        at com.gaetan.pro.config.InitialisationDaoFactory.contextInitialized(InitialisationDaoFactory.java:19)

                                                        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4797)

                                                        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5221)

                                                        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

                                                        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)

                                                        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)

                                                        at java.util.concurrent.FutureTask.run(Unknown Source)

                                                        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

                                                        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

                                                        at java.lang.Thread.run(Unknown Source)

                                                        Voici à quoi correspondent les erreurs dans mes classes:
                                                        //DAOFactory ligne 58
                                                        try {
                                                           Class.forName( driver );
                                                        }
                                                        
                                                        //InitialisationDaoFactory ligne 19
                                                         this.daoFactory = DAOFactory.getInstance();
                                                        Voila, j'espère que je vous ai fourni suffisament d'infos.
                                                        Merci d'avance


                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          22 février 2016 à 12:50:25

                                                          Si tu rajoutes cela tel que tu le dis, ça devrait marcher normalement.

                                                          Ce que tu peux faire, déclare ta classe InitialisationDaoFactory avec une annotation de cette manière:

                                                          import javax.servlet.annotation.WebListener;
                                                          
                                                          @WebListener
                                                          public class InitialisationDaoFactory implements ServletContextListener {
                                                          //ton code
                                                          }

                                                          Si ça ne fonctionne toujours pas, c'est que le problème est ailleurs.

                                                          -
                                                          Edité par batanga 22 février 2016 à 12:51:48

                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                            27 février 2016 à 10:45:02

                                                            Bonjour le forum !

                                                            J'espère poster au bon endroit ...

                                                            J'aurais besoin d'un coup de pouce.

                                                            Je suis récemment passé sur Google Sheets pour la gestion d'une bibliothèque que j'aide bénévolement.

                                                            Une fonction n'est pas disponible dans l'interface, je pense qu'il faut la générer en Java.

                                                            J'aurais besoin d'une fonction permettant d'effacer le contenu de la ligne active.

                                                            ex : la cellule sélectionnée est C5 : la fonction efface la ligne 5.

                                                            J'ai des notions de VB mais pas du tout de Java.

                                                            Auriez-vous l'amabilité de m'aider dans cette tâche ?

                                                            Merci par avance.

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter

                                                            Cours Java EE - Vos questions

                                                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                            • Editeur
                                                            • Markdown