So the problem isn't in the DataSourceRealm that comes with Tomcat? It is in your own Realm implementation? If so, debugging the problem is up to you.
From your config you might try using the fully qualified JNDI name in your Realm config "java:env/jdbc/hsqldb".
Regards,
Glenn Uros Kotnik wrote:
OK, I'm doing this:
I made class -------------
public class UserManager extends RealmBase
It's almost same like DataSourceRealm just little changed to suit my DB.
I deleted code parts from start() that validates that we can open our
connection and also put this code part to
public Principal authenticate(String username, String credentials)
if (dbConnection == null) { return null; }
This is where I get exception -----------------------------
private Connection open() { try { StandardServer server = (StandardServer) ServerFactory.getServer(); Context context = server.getGlobalNamingContext(); DataSource dataSource = (DataSource)context.lookup(dataSourceName); //exception here
return dataSource.getConnection(); } catch (Exception e) { // Log the problem for posterity log(sm.getString("dataSourceRealm.exception"), e); } return null; }
This is from the log: ---------------------
003-02-25 15:09:16 DataSourceRealm[]: Exception performing authentication javax.naming.NameNotFoundException: Name jdbc is not bound in this Context at org.apache.naming.NamingContext.lookup(NamingContext.java:811) at org.apache.naming.NamingContext.lookup(NamingContext.java:194) at org.asterius.tomcat.security.UserManager.open(UserManager.java:647) at org.asterius.tomcat.security.UserManager.authenticate(UserManager.java:4 80) at org.apache.catalina.authenticator.FormAuthenticator.authenticate(FormAut henticator.java:263) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authenticator Base.java:480)
This is Server.xml ------------------
<Context debug="0" docBase="C:\Projects\ipcs\ipcs" path="" workDir="C:\Projects\ipcs\ipcs">
<Resource name="jdbc/hsqldb" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/hsqldb"> <parameter> <name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </parameter>
<parameter> <name>maxActive</name> <value>100</value> </parameter>
<parameter> <name>maxIdle</name> <value>30</value> </parameter>
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter>
<!-- dB username and password for dB connections --> <parameter> <name>username</name> <value>iuser</value> </parameter> <parameter> <name>password</name> <value>iuser</value> </parameter>
<!-- Class name for JDBC driver -->
<parameter>
<name>driverClassName</name>
<value>org.hsqldb.jdbcDriver</value> </parameter>
<parameter>
<name>url</name>
<value>jdbc:hsqldb:hsql://asterix</value> </parameter>
</ResourceParams>
<Realm className="org.asterius.tomcat.security.UserManager" debug="99" dataSourceName="jdbc/hsqldb"
userTable="ic_users" userNameCol="login_name" userCredCol="password"
userRoleTable="ic_groups" roleNameCol="group_name" linkUserRoleTable="ic_users_groups" groupIDcol="id_group"
userIDcol="id_user"
userIDlang = "id_language" userRealName="real_name"
/>
---------------------------------------------------------------------- Glenn Nielsen [EMAIL PROTECTED] | /* Spelin donut madder | MOREnet System Programming | * if iz ina coment. | Missouri Research and Education Network | */ | ----------------------------------------------------------------------
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]