Próbowałem prawie wszystkiego, co mogę znaleźć, jeśli ktoś jest w stanie mi pomóc, będę wiecznie wdzięczny (i dużo bardziej wolny w moim czasie).Nie można utworzyć sterownika JDBC klasy '' dla adresu URL połączenia 'null': Tomcat i sterownik JDBC serwera SQL
Zasadniczo mam błąd w Tomcat 7.0 (zarówno podczas pracy w ciągu Eclipse i za pośrednictwem startup.bat), który mówi, że to po danych zaczyna być dostępne przez mojego dynamicznej aplikacji internetowej:
Cannot create JDBC driver of class '' for connect URL 'null'
java.lang.NullPointerException
at sun.jdbc.odbc.JdbcOdbcDriver.getProtocol(JdbcOdbcDriver.java:507)
at sun.jdbc.odbc.JdbcOdbcDriver.knownURL(JdbcOdbcDriver.java:476)
at sun.jdbc.odbc.JdbcOdbcDriver.acceptsURL(JdbcOdbcDriver.java:307)
mam plik sqljdbc4.jar w katalogu tomcat \ lib. Próbowałem również umieścić to w moich WEB-INF/lib, a nawet moich katalogów lib JDK. Nie sądzę, aby program sqljdbc.jar zadziałał, ponieważ jest przeznaczony dla starszych instalacji JDK/JRE niż moje.
Słyszałem, że pliki context.xml i web.xml mają kluczowe znaczenie, aby to zadziałało.
web.xml urywek:
<resource-ref>
<description>LBI DB Connection</description>
<res-ref-name>jdbc/LBIDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<resource-ref>
<description>OR DB Connection</description>
<res-ref-name>jdbc/ORDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
context.xml zakładka
<Context>
<!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<Resource name="jdbc/LBIDB" auth="Container"
type="javax.sql.DataSource" username="***" password="***" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver:localhost;DatabaseName=YYBackOffice;SelectMethod=cursor;"
maxActive="8" maxIdle="4"/>
<Resource name="jdbc/ORDB" auth="Container"
type="javax.sql.DataSource" username="***" password="***" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver:localhost;DatabaseName=XXBackOffice;SelectMethod=cursor;"
maxActive="8" maxIdle="4"/>
Kontekst ma klapkę zamykającą, w końcu.
Proszę pomóc! Jeśli potrzebujesz więcej informacji, daj mi znać. Ponadto nie jestem pewien, który context.xml powinien zostać zmodyfikowany, są 2 w katalogach Tomcat, jeden w folderze/conf i jeden w folderze webapps/appname/META-INF. Przepraszam, jeśli wydaje mi się, że jestem trochę nowicjuszem, to dlatego, że jestem!
Ponadto widziałem wiele różnych przykładów adresu url = "..." w pliku context.xml, niektóre zawierają również numery portów. Wypróbowałem kilka rzeczy w Internecie, ale nic nie działa (nic nie pomaga w Internecie jest moim dokładnym środowiskiem danych, także przypuszczam, że to trudne, aby ta aplikacja wypytywała dwie różne bazy danych w danym czasie).
Myśli?
Wielkie dzięki za wyjaśnienie, słyszałem tak wiele rzeczy w Internecie z server.xml oraz używanie globalnych zasobów, problemów context.xml, itp., Które mogą być mylące dla nowicjuszy. Założę się, że to pomoże mi w rozwiązaniu mojego problemu. – aohm1989
FYI, zmiana na sterownik JTDS SQL Server i użycie adresu URL/sterownika JDBC sprawdziły się. Nie mogę powiedzieć na pewno, ale wygląda na to, że błędy zniknęły! Okazuje się, że ta aplikacja internetowa ma inne problemy, które nie są związane z tym, myślę, ale to nadal pomaga ton na własne potrzeby. Wielkie dzięki. – aohm1989