Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Tomcat e Postgresql

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da psychopathic Visualizza il messaggio
    Uso IntelliJ come ide, e questo è il mio pom
    Ok, il pom in effetti è corretto.

    Lo scope provided è ok per jakarta.jakartaee-web-api. Tira dentro molte cose (è una dipendenza di "piattaforma" intera) ma sono tutte provided, quindi usate solo in compilazione.

    Per il postgresql invece lo scope provided è scorretto. Se proprio vuoi mettere lo scope, al massimo dovrebbe essere <scope>runtime</scope> che ha anche più senso (i driver JDBC di norma non servono in compilazione ma solo a runtime).

    Pertanto, fai questa correzione (e togli il jar dalla c:\tomcat-10.1.40\lib !). Quindi lancia un mvn package (da prompt o l'equivalente da IDE). Ti crea il war e se ci guardi dentro, dovresti trovare la WEB-INF/lib/ con svariati jar, tra cui anche il postgresql-42.7.5.jar.

    Se c'è e fai il deploy del war, funziona? Se sì, stop, il problema non c'è o perlmeno non è a questi livelli ma forse altrove.

    L'unica cosa che non hai descritto bene è come fai il deploy. Dall'IDE? Se ben ricordo (ed è ancora così), l'IntelliJ community non ha il supporto nativo di Tomcat mentre quello commerciale ha già tutte le integrazioni per i server.
    Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  2. #2
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Ok, il pom in effetti è corretto.

    Lo scope provided è ok per jakarta.jakartaee-web-api. Tira dentro molte cose (è una dipendenza di "piattaforma" intera) ma sono tutte provided, quindi usate solo in compilazione.

    Per il postgresql invece lo scope provided è scorretto. Se proprio vuoi mettere lo scope, al massimo dovrebbe essere <scope>runtime</scope> che ha anche più senso (i driver JDBC di norma non servono in compilazione ma solo a runtime).

    Pertanto, fai questa correzione (e togli il jar dalla c:\tomcat-10.1.40\lib !). Quindi lancia un mvn package (da prompt o l'equivalente da IDE). Ti crea il war e se ci guardi dentro, dovresti trovare la WEB-INF/lib/ con svariati jar, tra cui anche il postgresql-42.7.5.jar.

    Se c'è e fai il deploy del war, funziona? Se sì, stop, il problema non c'è o perlmeno non è a questi livelli ma forse altrove.

    L'unica cosa che non hai descritto bene è come fai il deploy. Dall'IDE? Se ben ricordo (ed è ancora così), l'IntelliJ community non ha il supporto nativo di Tomcat mentre quello commerciale ha già tutte le integrazioni per i server.
    Ciao, domani farò una prova, ma il problema è proprio quando la libreria la mette dentro WEB-INF/lib/. Quando la libreria di postgresql è qui dentro non viene caricata/registrata. mentre le la sposto dentro tomcat/lib, viene correttamente caricata/registrata e alla chiusura dell'app viene deregistrata correttamente.

    Per il deploy, con intellj creo il file war, poi lo carico con tomcat ed eseguo il deploy dalla schermata manager di tomcat.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.