Re: JDBCRealm alternatives... is there a Cayenne Realm around I could use?

From: Jeff de Vries (jdevrie..frog.com)
Date: Fri Sep 08 2006 - 11:49:30 EDT

  • Next message: Eric Lazarus: "Re: JDBCRealm alternatives... is there a Cayenne Realm around I could use?"

    This is what we use, and it works. One difference I notice is where
    the login and password are located ...

    > <Realm className="org.apache.catalina.realm.JDBCRealm"
    > debug="99"
    > driverName="org.postgresql.Driver"
    > connectionURL="jdbc:postgresql://dbhost/realmdb"
    > connectionName="<login-goes-here>"
    > connectionPassword="<passord-goes-here>"
    > userTable="users" userNameCol="uname"
    > userCredCol="pword"
    > userRoleTable="roles" roleNameCol="role"
    > digest="MD5" />

    Hope that helps ...

    On Sep 8, 2006, at 7:18 AM, Eric Lazarus wrote:

    > Hi, Folks
    >
    > Up until now we have been using the memory realm to control user
    > access to our main application.
    >
    > The numbers of users is going to go up so we need to keep that info
    > somewhere and in the database seems like a good place.
    >
    > We are having some difficulty configuring a JDBCRealm, getting the
    > error you see at the bottom of this email but it occurs to me:
    >
    > All our other database access is via cayenne. Should I be doing
    > something more cayenne-ish rather than using the JDBCRealm?
    >
    >
    > Thanks!
    >
    > Eric
    >
    > = = = = = = = = =
    >
    > Still having trouble connecting through tomcat's JDBC REALM.
    >
    > I am trying to use the tomcat JDBC REALM for user log-in.
    > Here is the relevent portion of my server.xml file:
    >
    > <Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
    > driverName="org.postgresql.Driver"
    >
    > connectionURL="jdbc:postgres://localhost/PAX_2005?
    > user=paxlogin&amp;password=paxlogin"
    > serTable="loginuser" userNameCol="emailaddress"
    > userCredCol="password"
    > userRoleTable="loginrole" roleNameCol="role" />
    >
    >
    > HERE 'loginuser' and 'loginrole' are views in my postgres database.
    > They are UNION queries that combine 3 tables of possible users,
    > and distinguish them with different roles.
    >
    > 'paxlogin' is a user in this database who has 'select' privileges
    > on these two views, and no other previleges.
    >
    > When I start tomcat, I get the following output, which essentially
    > says that tomcat got an SQL Exception when it tired to connect.
    >
    > I would probably be able to solve this easier if I could see the
    > text of the SQLException that is the 'root cause' of the error.
    >
    > Is this an authentication failure on the paxlogin user ?
    > Is somthing wrong with the Views, or the privileges ?
    >
    >
    > Using CATALINA_BASE: /home/pax/2005/tomcat-base
    > Using CATALINA_HOME: /usr/local/tomcat/4.0.6
    > Using CATALINA_TMPDIR: /home/pax/2005/tomcat-base/temp
    > Using JAVA_HOME: /usr/local/java/j2sdk1.4.2_06
    > Starting service Tomcat-Standalone
    > Apache Tomcat/4.0.6
    > Catalina.start: LifecycleException: Exception opening database
    > connection:
    > java.sql.SQLException: org.postgresql.Driver
    > LifecycleException: Exception opening database connection:
    > java.sql.SQLException: org.postgresql.Driver
    > at org.apache.catalina.realm.JDBCRealm.start(JDBCRealm.java:615)
    > at
    > org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1108)
    > at
    > org.apache.catalina.core.StandardEngine.start(StandardEngine.java:343)
    > at
    > org.apache.catalina.core.StandardService.start(StandardService.java:
    > 388)
    > at
    > org.apache.catalina.core.StandardServer.start(StandardServer.java:506)
    > at org.apache.catalina.startup.Catalina.start(Catalina.java:781)
    > at org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
    > at org.apache.catalina.startup.Catalina.process(Catalina.java:179)
    > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    > at
    > sun.reflect.NativeMethodAccessorImpl.invoke
    > (NativeMethodAccessorImpl.java:39)
    > at
    > sun.reflect.DelegatingMethodAccessorImpl.invoke
    > (DelegatingMethodAccessorImpl.java:25)
    > at java.lang.reflect.Method.invoke(Method.java:324)
    > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:243)
    > ----- Root Cause -----
    > java.sql.SQLException: org.postgresql.Driver
    > at org.apache.catalina.realm.JDBCRealm.open(JDBCRealm.java:538)
    > at org.apache.catalina.realm.JDBCRealm.start(JDBCRealm.java:613)
    > at
    > org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1108)
    > at
    > org.apache.catalina.core.StandardEngine.start(StandardEngine.java:343)
    > at
    > org.apache.catalina.core.StandardService.start(StandardService.java:
    > 388)
    > at
    > org.apache.catalina.core.StandardServer.start(StandardServer.java:506)
    > at org.apache.catalina.startup.Catalina.start(Catalina.java:781)
    > at org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
    > at org.apache.catalina.startup.Catalina.process(Catalina.java:179)
    > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    > at
    > sun.reflect.NativeMethodAccessorImpl.invoke
    > (NativeMethodAccessorImpl.java:39)
    > at
    > sun.reflect.DelegatingMethodAccessorImpl.invoke
    > (DelegatingMethodAccessorImpl.java:25)
    > at java.lang.reflect.Method.invoke(Method.java:324)
    > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:243)
    >
    >
    >
    > Eric
    > +1 (917) 589-6579
    >
    > ---------------------------------
    > Why keep checking for Mail? The all-new Yahoo! Mail shows you when
    > there are new messages.



    This archive was generated by hypermail 2.0.0 : Fri Sep 08 2006 - 11:51:18 EDT