This application runs without any error with jdk8.
jdk version jdk17
jConnect dependency
<dependency>
<groupId>com.sybase.jconnect</groupId>
<artifactId>jconn4</artifactId>
<version>7.07-27307</version>
</dependency>
oracle dependency
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc8_g</artifactId>
<version>12.2.0.1</version>
</dependency>
Error : Could not load JDBC driver class [com.sybase.jdbc4.jdbc.SybDriver]
I tried by upgrading jConnect jar to 16.039-27463 and ojdbc to ojdbc10 version 19.3 but of no use.
Did anyone face this before and how got it fixed.
I continue to get a error saying:
Error trying to load driver: com.microsoft.sqlserver.jdbc.SQLServerDriver : Cannot load class 'com.microsoft.sqlserver.jdbc.SQLServerDriver':
Class 'com.microsoft.sqlserver.jdbc.SQLServerDriver' has no package mapping for region 'domain/default/app/s-claims'
I have the dependency for it in my pom.xml:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.2.2.jre8</version>
</dependency>
I also have the shared library in the pom:
<sharedLibrary>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
</sharedLibrary>
When trying to connect directly to SQL Server using the same credentials, I am successful.
I am fairly new to Mulesoft so It could be something simple I am missing. Does anyone have any ideas?
Apparently there was just a issue with the studio. I didn't change anything and tested my connection again and it worked after redeploying.
I connected a SQL server and its driver to my Dynamic Web project. I created a test class (not part of the website) that successfully connects to my database.
However, when I try to connect to my database in my website (in a java servlet actually) and run it on my server/Apache Tomcat I get the exception:
class not found
I don't understand why this is happening. My server is working, and the database connection works in a regular java class. Do I have to set up something else when using a SQL server on a (Tomcat) web server?
Any help would be much appreciated!
I suppose you are using a JDBC driver to connect to your SQLserver from the servlet.
Make sure you have copied the JDBC jar file into the Tomcat app you are actually running the servlet from. Ensure that you are accessing that servlet in particular from your front-end (web site) and not another servlet by mistake which does not have the JDBC classes in its class path:
Typically the jar file goes into webapps/your_app_name/WEB_INF/lib
can you share the stack trace, on which class is your code breaking?
If you are using Maven then you may need to remove the <scope> notation. I was using eClipse, Maven, MSSql. My pom.xml shows the dependancy was grey and marked as test. I removed the line and it worked great.
Change:
<!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>7.1.4.jre8-preview</version>
<scope>test</scope>
</dependency>
to:
<!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>7.1.4.jre8-preview</version>
</dependency>
Tomcat version - apache-tomcat-9.0.0.M19
I am trying to connect my spring application with microsoft sql database.
driverClassName=com.microsoft.sqlserver.jdbc.SQLserverDriver
Maven dependency -
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>
This jar is available in the generated war file and i have also placed the jar in the lib folder of the tomcat but i'm still getting the following error when i try to deploy my application on Tomcat -
Cannot load JDBC driver class 'com.microsoft.sqlserver.jdbc.SQLserverDriver'
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLserverDriver
What am i missing?
You have a typo in your config. The driver class is named
com.microsoft.sqlserver.jdbc.SQLServerDriver
not
com.microsoft.sqlserver.jdbc.SQLserverDriver
................................^...........
I am developing a portlet where I have Hibernate access to SQL Server database. I set up maven dependencies for it and try to find out SQL Server connector on the same way I know MySql has it.
Still my Google-search gives only Mysql if I search for SQL Server connector. What is the right maven dependency value?
Download the driver JAR from the link provided by Olaf and add it to your local Maven repository with;
mvn install:install-file -Dfile=sqljdbc4.jar -DgroupId=com.microsoft.sqlserver -DartifactId=sqljdbc4 -Dversion=4.0 -Dpackaging=jar
Then add it to your project with;
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>4.0</version>
</dependency>
Answer for the "new" and "cool" Microsoft.
Yay, SQL Server driver now under MIT license on
GitHub: https://github.com/Microsoft/mssql-jdbc
Maven Central: http://search.maven.org/#search%7Cga%7C1%7Cmssql-jdbc
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>
Answer for the "old" Microsoft:
For my use-case (integration testing) it was sufficient to use a system scope for the JDBC driver's dependency as such:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>3.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/sqljdbc4.jar</systemPath>
<optional>true</optional>
</dependency>
That way, I could put the JDBC driver into local version control. No need to have each developer manually set stuff up in their own repositories.
I took inspiration from this answer to another Stack Overflow question and I've also blogged about it here.
There is also an alternative: you could use the open-source jTDS driver for MS-SQL Server, which is compatible although not made by Microsoft.
For that driver, there is a maven artifact that you can use:
http://jtds.sourceforge.net/
From http://mvnrepository.com/artifact/net.sourceforge.jtds/jtds :
<dependency>
<groupId>net.sourceforge.jtds</groupId>
<artifactId>jtds</artifactId>
<version>1.3.1</version>
</dependency>
UPDATE nov 2016, Microsoft now published its MSSQL JDBC driver on github and it's also available on maven now:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>
I believe you are looking for the Microsoft SQL Server JDBC driver: http://msdn.microsoft.com/en-us/sqlserver/aa937724
Be careful with the answers above. sqljdbc4.jar is not distributed with under a public license which is why it is difficult to include it in a jar for runtime and distribution. See my answer below for more details and a much better solution. Your life will become much easier as mine did once I found this answer.
https://stackoverflow.com/a/30111956/3368958
Even after installing the sqlserver jar, my maven was trying to fetch the dependecy from maven repository. I then, provided my pom the repository of my local machine and it works fine after that...might be of help for someone.
<repository>
<id>local</id>
<name>local</name>
<url>file://C:/Users/mywindows/.m2/repository</url>
</repository>
<dependency>
<groupId>com.hynnet</groupId>
<artifactId>sqljdbc4-chs</artifactId>
<version>4.0.2206.100</version>
</dependency>
This worked for me(if you use maven)
https://search.maven.org/artifact/com.hynnet/sqljdbc4-chs/4.0.2206.100/jar
It looks like Microsoft has published some their drivers to maven central:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.1.0.jre8</version>
</dependency>