Ho un database H2 incorporato che vorrei inserire nella directory WEB-INF di un'applicazione web.Incorporamento di un database H2 all'interno della directory WEB-INF
Qual è il modo corretto di fare riferimento a questo in un URL JDBC?
Idealmente mi piacerebbe una soluzione che avrebbe funzionato sia per una GUERRA, sia per una GUERRA ampliata (se possibile).
Grazie per il vostro aiuto!
FYI, ho provato la seguente:
jdbc:h2:/WEB-INF/data/myDB;CIPHER=AES
Ma questo si traduce in:
org.h2.jdbc.JdbcSQLException: A file path that is implicitly relative to the current working directory is not allowed in the database URL "jdbc:h2:/WEB-INF/data/myDB;CIPHER=AES". Use an absolute path, ~/name, ./name, or the baseDir setting instead. [90011-187]
La modifica di questa a: jdbc: h2: ./ WEB-INF/dati/myDB ; CIPHER = AES
Risultati nel seguente errore, che mostra chiaramente il suo tentativo di mettere il mio database nella directory bin di Tomcat, piuttosto che la vera directory WEB-INF dove lo voglio:
org.h2.jdbc.JdbcSQLException: Error while creating file "C:/Program Files/Apache Software Foundation/Tomcat 7.0/bin/WEB-INF" [90062-187]
A seconda di quale applicazione server è necessario sostenere si dovrebbe fare attenzione con la messa in file WEBINF. Websphere è molto esigente in questo settore. Scrivi nel database o è in sola lettura? È meglio consentire la memorizzazione del database in una directory separata e consentire la configurazione del percorso – Marged
È di sola lettura e deve essere distribuito solo su Tomcat, preferibilmente nel formato WAR. – Doug
Non è consentito scrivere nei file di programma, provare un percorso diverso – Marged