WORKERS AHEAD!
You are viewing the development documentation for the Apereo CAS server. The functionality presented here is not officially released yet. This is a work in progress and will be continually updated as development moves forward. You are most encouraged to test the changes presented.
JDBC Drivers
While in most cases this is unnecessary and handled by CAS automatically, you may need to also include the following module to account for various database drivers:
1
2
3
4
5
<dependency>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-support-jdbc-drivers</artifactId>
<version>${cas.version}</version>
</dependency>
1
implementation "org.apereo.cas:cas-server-support-jdbc-drivers:${project.'cas.version'}"
1
2
3
4
5
6
7
8
9
dependencyManagement {
imports {
mavenBom "org.apereo.cas:cas-server-support-bom:${project.'cas.version'}"
}
}
dependencies {
implementation "org.apereo.cas:cas-server-support-jdbc-drivers"
}
1
2
3
4
5
6
7
8
9
10
dependencies {
/*
The following platform references should be included automatically and are listed here for reference only.
implementation enforcedPlatform("org.apereo.cas:cas-server-support-bom:${project.'cas.version'}")
implementation platform(org.springframework.boot.gradle.plugin.SpringBootPlugin.BOM_COORDINATES)
*/
implementation "org.apereo.cas:cas-server-support-jdbc-drivers"
}
JPA Implementations
The following JPA implementations are provided by CAS. In most cases, the indicated modules do not need to be included in a CAS build and the implementation would be automatically chosen by the feature module. The details below are listed for reference and may be of use in advanced scenarios where development may be required.
Hibernate
Hibernate ORM is an object–relational mapping tool for the Java programming language. It provides a framework for mapping an object-oriented domain model to a relational database.
1
2
3
4
5
<dependency>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-support-jpa-hibernate</artifactId>
<version>${cas.version}</version>
</dependency>
1
implementation "org.apereo.cas:cas-server-support-jpa-hibernate:${project.'cas.version'}"
1
2
3
4
5
6
7
8
9
dependencyManagement {
imports {
mavenBom "org.apereo.cas:cas-server-support-bom:${project.'cas.version'}"
}
}
dependencies {
implementation "org.apereo.cas:cas-server-support-jpa-hibernate"
}
1
2
3
4
5
6
7
8
9
10
dependencies {
/*
The following platform references should be included automatically and are listed here for reference only.
implementation enforcedPlatform("org.apereo.cas:cas-server-support-bom:${project.'cas.version'}")
implementation platform(org.springframework.boot.gradle.plugin.SpringBootPlugin.BOM_COORDINATES)
*/
implementation "org.apereo.cas:cas-server-support-jpa-hibernate"
}
EclipseLink
EclipseLink is the open source Eclipse Persistence Services Project from the Eclipse Foundation. The software provides an extensible framework that allows Java developers to interact with various data services, including databases, web services, Object XML mapping, and enterprise information systems.
1
2
3
4
5
<dependency>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-support-jpa-eclipselink</artifactId>
<version>${cas.version}</version>
</dependency>
1
implementation "org.apereo.cas:cas-server-support-jpa-eclipselink:${project.'cas.version'}"
1
2
3
4
5
6
7
8
9
dependencyManagement {
imports {
mavenBom "org.apereo.cas:cas-server-support-bom:${project.'cas.version'}"
}
}
dependencies {
implementation "org.apereo.cas:cas-server-support-jpa-eclipselink"
}
1
2
3
4
5
6
7
8
9
10
dependencies {
/*
The following platform references should be included automatically and are listed here for reference only.
implementation enforcedPlatform("org.apereo.cas:cas-server-support-bom:${project.'cas.version'}")
implementation platform(org.springframework.boot.gradle.plugin.SpringBootPlugin.BOM_COORDINATES)
*/
implementation "org.apereo.cas:cas-server-support-jpa-eclipselink"
}
Database Support
Automatic support for drivers includes the following databases. All other drivers need to be manually added to the build configuration.
Control global properties that are relevant to Hibernate, when CAS attempts to employ and utilize database resources, connections and queries.
cas.jdbc.case-insensitive=false
When choosing physical table names, determine whether names should be considered case-insensitive. How can I configure this property?
|
cas.jdbc.gen-ddl=true
Whether to generate DDL after the EntityManagerFactory has been initialized creating/updating all relevant tables. How can I configure this property?
|
cas.jdbc.physical-table-names=
Indicate a physical table name to be used by the hibernate naming strategy in case table names need to be customized for the specific type of database. The key here indicates the CAS-provided table name and the value is the translate physical name for the database. If a match is not found for the CAS-provided table name, then that name will be used by default. How can I configure this property?
|
cas.jdbc.show-sql=false
|
H2
Available drivers are:
org.h2.Driver
Dialects |
---|
org.hibernate.dialect.H2Dialect |
HSQLDB
Available drivers are:
org.hsqldb.jdbcDriver
Dialects |
---|
org.hibernate.dialect.HSQLDialect |
Oracle
Available drivers are:
oracle.jdbc.driver.OracleDriver
Dialects |
---|
org.hibernate.dialect.OracleDialect |
MYSQL
Available drivers are:
com.mysql.jdbc.Driver
com.mysql.cj.jdbc.Driver
Dialects |
---|
org.hibernate.dialect.MySQLDialect |
PostgreSQL
Available drivers are:
org.postgresql.Driver
Dialects |
---|
org.hibernate.dialect.PostgreSQLDialect |
MariaDB
Available drivers are:
org.mariadb.jdbc.Driver
Dialects |
---|
org.hibernate.dialect.MariaDBDialect |
Microsoft SQL Server
Available drivers are:
net.sourceforge.jtds.jdbc.Driver
com.microsoft.sqlserver.jdbc.SQLServerDriver
Dialects |
---|
org.hibernate.dialect.SQLServerDialect |