Re: loading jdbc Driver in servlet

Поиск
Список
Период
Сортировка
От Dave Cramer
Тема Re: loading jdbc Driver in servlet
Дата
Msg-id CADK3HH+ikPCts044CrSy+4Q=YdFE11XLrpU2bYKjO_thr+_bYw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: loading jdbc Driver in servlet  (Thomas Kellerer <spam_eater@gmx.net>)
Ответы Re: loading jdbc Driver in servlet
Список pgsql-general


On Mon, 17 Dec 2018 at 02:28, Thomas Kellerer <spam_eater@gmx.net> wrote:
Rob Sargent schrieb am 14.12.2018 um 19:28:
> Using java 1.8, postgresql-42.1.4.jar, embedded tomcat 9
>
> It appears to me that I need to make the call
> "Class.forName("org.postgresql.Driver)" when the entry is in a
> servlet.  Is this expected, within a servlet, or is this just /post
> hoc ergo propter hoc /at it finest and I changed something else
> (wittingly or not).  Same code outside of servlet does not need the
> forced loading of the class and the manual claims it's not need after
> java 1.6

Class.forName() is definitely not needed if the driver's JAR file is
included in the classloader of the class requesting a connection.

Where exactly did you put the JDBC driver's jar file?
And what exactly is your main() method doing?

If you look at Tomcat's startup script (catalina.sh or catalina.bat), it's
obvious that setting up the claspath isn't that straightforward.
My guess is, that that your main() method does something different
and does not properly include the driver's jar in the classpath.


Servlet classpath issues are legendary. As Thomas points out setting up the classpath for a servlet engine is not trivial.





В списке pgsql-general по дате отправления:

Предыдущее
От: Thomas Kellerer
Дата:
Сообщение: Re: loading jdbc Driver in servlet
Следующее
От: hamann.w@t-online.de
Дата:
Сообщение: conditionally terminate psql script