Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Creare una Servlet su Eclipse

    Ho provato a creare una Servlet su Eclipse. Ho creato un server Tomcat 9 poi un Dynamic Web Project ed il risultato è stato questo:
    -Djava.endorsed.dirs=C:\Program Files\Java\apache-tomcat-9.0.8\endorsed is not supported. Endorsed standards and standalone APIs
    in modular form will be supported via the concept of upgradeable modules.
    Questo è il codice
    codice:
    import java.io.IOException;
    import java.io.PrintWriter;
    import java.util.Date;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    @WebServlet("/index.jsp")
    public class MyServlet extends HttpServlet {
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            PrintWriter pw=resp.getWriter();
            pw.println("<html><head></head><body>");
            pw.println("<div>");
            pw.println(new Date().toString());
            pw.println("</div>");
            pw.println("</body></html>");
        }
    }
    Ho provato a cambiare la JVM in Eclipse mettendo la 8 come si suggerisce qui ma non ho risolto, ottengo questo errore:
    HTTP Status 404 – Not Found
    Type Status Report
    Message /02-MyServlet/index.jsp
    Description The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.
    Apache Tomcat/9.0.8
    Ultima modifica di giannino1995; 19-06-2018 a 23:55
    Più pratica in futuro...

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Ho provato a creare una Servlet su Eclipse. Ho creato un server Tomcat 9 poi un Dynamic Web Project ed il risultato è stato questo:
    -Djava.endorsed.dirs=C:\Program Files\Java\apache-tomcat-9.0.8\endorsed is not supported. Endorsed standards and standalone APIs
    in modular form will be supported via the concept of upgradeable modules.
    E questo dove è mostrato? Su console?

    Comunque, Tomcat 9 richiede almeno Java 8 (è ben specificato qui).
    Poi, quale versione di Eclipse? (devi avere ovviamente il package "for Java EE developers", non quello "base").
    Quale versione esatta di Java usi?
    Hai un web.xml nel progetto? Se sì, quale versione (delle Servlet API) specifica?
    Come hai configurato il Tomcat in Eclipse? Window -> Preferences poi Server -> Runtime Environments poi "Add..." e hai scelto innanzitutto la voce "Apache Tomcat v9.0"?
    Il server da solo (nel senso senza webapp deployate) parte da Eclipse oppure no? (lo vedi da console)

    Queste giusto alcune questioni ...
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  3. #3
    Quote Originariamente inviata da andbin Visualizza il messaggio
    E questo dove è mostrato? Su console?

    Comunque, Tomcat 9 richiede almeno Java 8 (è ben specificato qui).
    Poi, quale versione di Eclipse? (devi avere ovviamente il package "for Java EE developers", non quello "base").
    Quale versione esatta di Java usi?
    Hai un web.xml nel progetto? Se sì, quale versione (delle Servlet API) specifica?
    Come hai configurato il Tomcat in Eclipse? Window -> Preferences poi Server -> Runtime Environments poi "Add..." e hai scelto innanzitutto la voce "Apache Tomcat v9.0"?
    Il server da solo (nel senso senza webapp deployate) parte da Eclipse oppure no? (lo vedi da console)

    Queste giusto alcune questioni ...
    Quote Originariamente inviata da andbin Visualizza il messaggio
    E questo dove è mostrato? Su console?
    Si, esatto, su console.
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Poi, quale versione di Eclipse?
    Eclipse Java EE IDE for Web Developers.
    Version: Oxygen.3a Release (4.7.3a)
    Build id: 20180405-1200 (l'ultima versione)
    Come JDK uso la jdk-10.0.1 (l'ultima versione)
    Come Tomcat: apache-tomcat-9.0.8 (l'ultima versione)
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Hai un web.xml nel progetto? Se sì, quale versione (delle Servlet API) specifica?
    3.0
    codice:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
      <display-name>02-MyServlet</display-name>
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>
    </web-app>
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Come hai configurato il Tomcat in Eclipse?
    Ho scelto Tomcat 9.0, in 'browse...' ho indicato la cartella con i file del server (C:\Program Files\Java\apache-tomcat-9.0.8) tirati già da Oracle qualche istante prima e in JRE la jre-10.0.1.
    Guardando il tuo link sembrerebbe tutto a posto.
    Più pratica in futuro...

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    3.0
    codice:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
    Corretto, la @WebServlet è disponibile proprio dalle Servlet 3.0


    Punto 1)
    Il Tomcat in Eclipse SENZA alcuna webapp deployata parte? Dovrebbe metterci pochissimo a partire (una manciata di secondi e anche meno) e dare un log su console di una ventina di righe o poco più

    Punto 2)
    Se fai deploy della tua webapp, su console COSA vedi esattamente? Ci sono errori/eccezioni?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  5. #5
    Ora ottengo anche questo errore:
    http://www.matteoschianchi.it/wordpress/?p=289
    ma se creo la variabile d'ambiente non risolvo ed Eclipse mi scrive:
    Picked up _JAVA_OPTIONS: -Xmx512M
    -Djava.endorsed.dirs=C:\Program Files\Java\apache-tomcat-9.0.8\endorsed is not supported. Endorsed standards and standalone APIs
    in modular form will be supported via the concept of upgradeable modules.
    Punto 1)
    Se per avviare solo il server intendi premere sulla freccia verde e poi su Tomcat no. Compare questo:
    -Djava.endorsed.dirs=C:\Program Files\Java\apache-tomcat-9.0.8\endorsed is not supported. Endorsed standards and standalone APIs
    in modular form will be supported via the concept of upgradeable modules.
    https://prnt.sc/jxd2u7
    https://prnt.sc/jxd2uu

    Punto 2)
    Su console leggo questo e stop:
    -Djava.endorsed.dirs=C:\Program Files\Java\apache-tomcat-9.0.8\endorsed is not supported. Endorsed standards and standalone APIs
    in modular form will be supported via the concept of upgradeable modules.
    Ultima modifica di giannino1995; 21-06-2018 a 00:17
    Più pratica in futuro...

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    -Djava.endorsed.dirs=C:\Program Files\Java\apache-tomcat-9.0.8\endorsed is not supported. Endorsed standards and standalone APIs
    in modular form will be supported via the concept of upgradeable modules.
    Premessa:
    In effetti la questione della "endorsed" dir(s) esisteva fino a Java 8, poi in Java 9 è stata rimossa.
    C'è il dettaglio nel documento JDK 9 Migration Guide dove dice:

    The java.endorsed.dirs system property and the lib/endorsed directory are no longer present. The javac compiler and java launcher will exit if either one is detected.

    Ora, io ho scaricato il pacchetto apache-tomcat-9.0.8.zip (il pacchetto "core" classico come faccio solitamente) e lì la directory "endorsed" NON c'è. Quindi, perlomeno, non è "di serie" e quindi non "serve" di per sé a Tomcat.

    Se vai in Eclipse nella vista "Servers", fai doppio-click (o tasto destro -> menù voce "Open") sul server Tomcat. Ti si apre la vista di Overview sulla configurazione di Tomcat. Clicca su "Open launch configuration", vai nella scheda "Arguments" e tra i VM arguments dovresti trovare proprio quella -Djava.endorsed.dirs=....blabla....\endorsed

    Problema:
    Il problema è che quella impostazione non riesci a toglierla. Se la togli, confermi e poi rientri ... te la ritrovi! (è sicuramente una "preimpostazione" del plugin per Tomcat, direi)

    Soluzione:
    In questa discussione su StackOverflow ho letto che sarebbe sufficiente aggiornare il WTP di Eclipse.

    Prova e verifica.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  7. #7
    Ho installato quello che mi hai detto ma ottengo questo errore:
    https://prnt.sc/jxmtvc
    Rilanciando la Servlet ottengo lo stesso errore.
    Tu che IDE utilizzi?
    ciao e grazie
    Più pratica in futuro...

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da giannino1995 Visualizza il messaggio
    Rilanciando la Servlet ottengo lo stesso errore.
    Tu che IDE utilizzi?
    Io ho sottomano un Eclipse Oxygen 3a ma con JDK 8. Il JDK 10 potrei metterlo, per prova.
    Comunque ho aggiornato il WTP scegliendo la voce "Web Tools Platform (WTP) 3.9.4 " che è l'ultimo.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  9. #9
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Aggiornamento sul Eclipse Oxygen 3a che ho sottomano, ho messo il Tomcat 9.0.8 e con il JDK 8 funziona perfettamente.
    Ho aggiornato il WTP come detto sopra. Poi ho installato il JDK 10 e l'ho impostato come runtime per il Tomcat (NON per l'IDE, che parte ancora con JDK 8 ma non è importante questo).
    Con il JDK 10, il Tomcat NON parte, esattamente con lo stesso problema citato del -Djava.endorsed.dirs.
    Il punto è che il server Tomcat l'avevo già creato nella vista "Servers". Semplicemente l'ho rimosso e l'ho ricreato. Nella launch configuration ora l'opzione -Djava.endorsed.dirs NON c'è più (grazie al nuovo WTP) e ora Tomcat FUNZIONA con JDK 10.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  10. #10
    Utente bannato
    Registrato dal
    Nov 2015
    Messaggi
    60
    http://www.davismol.net/2014/10/20/c...resql-parte-2/

    dai un'occhio magari ti è di aiuto per esercitarti e ripartire da capo con quello che stai facendo...

    Ultima modifica di ilterribile; 21-06-2018 a 19:18

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.