I found a solution to my problem. Had to update the xsd schema with an
extra attribute "module" and then user need pack his JDBC driver as module.
I use the code below to load the model and the driver class.
Class<?> driverClass =
Module.loadClassFromCallerModuleLoader(ModuleIdentifier.fromString(moduleName),
driver);
driverClass.newInstance();
<outbound-connections>
<database>
<connection module="com.h2database.h2"
driver="org.h2.jdbcx.JdbcDataSource" name="db"
url="jdbc:h2:/tmp/test;DB_CLOSE_DELAY=-1" username="sa"
password=""
min-pool-size="10" max-pool-size="20" />
</database>
</outbound-connections>
Does it make sense?
Thanks
2012/7/20 Flemming Harms <flemming.harms(a)gmail.com>
Hi
I'm trying to finish
https://issues.jboss.org/browse/AS7-1371 but I ran
into a problem with the class loader. I need way to load the class for a
specified JDBC driver, but I can't seem to figure out how to make it
available on the classpath too my authentication service.
I try to load the connection class like this, and testing it with the
existing H2 JDBC driver:
ClassLoader original = null;
try {
original = Thread.currentThread().getContextClassLoader();
if (original != null) {
Thread.currentThread().setContextClassLoader(null);
}
Class.forName(this.driver).newInstance();
} finally {
if (original != null) {
Thread.currentThread().setContextClassLoader(original);
}
}
The user can setup a outbound connection to a database for authentication,
by using the configuration below
<security-realm name="ManagementRealm">
<authentication>
<local default-user="$local"/>
<database connection="db" plain-text="true">
<!-- simple-select-users table="users"
username-field="user"
password-field="password"/ -->
<sql-select-users sql="select user,password from users where
user = ?" />
</database>
</authentication>
</security-realm>
<outbound-connections>
<database>
<connection driver="org.h2.jdbcx.JdbcDataSource"
name="db"
url="jdbc:h2:/tmp/test;DB_CLOSE_DELAY=-1" username="sa"
password=""
min-pool-size="10" max-pool-size="20" />
</database>
</outbound-connections>
Any suggestions how to solve this?
Thanks!
br
Flemming