sql >> Databáze >  >> RDS >> Sqlserver

Nativní knihovna sqljdbc_auth.dll je již načtena v jiném classloaderu

Každá webová aplikace má svůj vlastní Classloader (jejich izolace). Když zavoláte metodu Class.forName(), existuje statický blok, který se pokouší načíst sdílenou knihovnu (soubor dll) - takže obě vaše webové aplikace se pokoušejí načíst sdílenou knihovnu, a proto se zobrazí chybová zpráva, když druhá pokusy o načtení.

JDBC jar, který máte pro sqlserver, by měl být přesunut z balíčku s vašimi válkami do tomcat 7.0/lib a zkopírujte sqljdbc_auth.dll do složky tomcat/bin – tímto způsobem bude v nadřazeném classloaderu tomcat a třída bude načtena pouze jednou.

|----------------------------------|
| sqljdbc*.jar     --> tomcat*/lib |
|----------------------------------|
| sqljdbc_auth.dll --> tomcat*/bin |
|----------------------------------|


  1. Vraťte řádky z INSERT s ON CONFLICT bez nutnosti aktualizace

  2. Odstraňování problémů s výkonem CPU serveru SQL Server

  3. Zahodit cizí klíč, aniž byste znali název omezení?

  4. Jak se připojit k hostiteli PostgreSQL z virtuálního stroje vagrant