iBaffiPro ha scritto:
1) Quando avvio l'applicazione leggo in console:
2022-05-11 00:45:52.371 INFO 15792 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.60]
ma io ho impostato la versione 10.0.20. Inoltre, non capisco dove Eclipse possa aver preso la versione 9.0.60 dato che non l'ho neppure scaricata.
Ci sono alcune cose da chiarire. Per poter sviluppare webapp Java Enterprise in Eclipse serve la versione "Eclipse IDE for Enterprise Java and Web Developers", non quella "Eclipse IDE for Java Developers" che non ha i tools per JavaEE.
Su questo credo che sei a posto, perché hai mostrato la configurazione dei server (questa c'è solo nella prima versione indicata prima).
Questo però conta solo se sviluppi webapp JavaEE "pure", quelle che si impacchettano in un file .war finale. Se sviluppi ad esempio con Spring Boot e la applicazione parte
stand-alone (dal main() ) con il suo Tomcat "embedded" (incorporato), non fa invece differenza la versione di Eclipse delle due indicate.
In Eclipse comunque la sezione di configurazione "globale" Server -> Runtime Environments (quella che hai mostrato nello screenshot) descrive solo la configurazione per così dire "teorica" di un server, che da sola non fa nulla di particolare.
Ma la ISTANZA vera e propria del server va poi creata e gestita nella vista Servers (se non ce l'hai tra le barre di icone: Window -> Show View -> Servers). Lì ci sono i vari server che possono essere in stato Stopped, Started, ecc....
Eclipse di suo NON fornisce alcun server. Perlomeno sono sicuro di questo per la pacchettizzazione .zip che io sono abituato a scaricare e spacchettare "a mano". Forse è diverso per la pacchettizzazione .exe, quella come "installer" da avviare ma non saprei dire ora, perché non l'ho mai più provata! (preferisco di gran lunga lo zip )
E infine c'è una questione che dovresti comprendere meglio: stai parlando di Tomcat 9.xx e Tomcat 10.xx. Il Tomcat 10, a differenza delle precedenti release, si basa su
Jakarta EE che è diverso dal Java EE, perché nel Jakarta EE tutti i package della API Enterprise sono stati rinominati da javax.*** a jakarta.***. Questa è una grossa "rottura" con il passato del Java Enterprise e cambia TUTTO. Significa che lo sviluppo è proprio diverso e va fatto specificatamente per poter usare Jakarta EE (e un server come Tomcat 10 o più). Una webapp che gira su un Tomcat 9
NON gira su Tomcat 10.
Nota che Spring Boot 2.x si basa ancora su Java EE.
Quindi dovresti chiarire un attimo cosa stai facendo esattamente.