Hello all,

I first posted this to the tomcat-users list since it seems to be a
DataSource/DataSourceRealm 
related question - but I am getting the problems from my JSPs so someone
on this list may have been through this...


Original message
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - -

Please excuse any going over of old ground with this question, I have
searched every archive I can find.  I have recently started using
DataSources from JSPs using the JSTL taglib (I think this is a Tomcat
rather than taglib question).

I've got a <Context> for my apps and initially had my bunch of
DataSources set up within the <Context>.

No problems.  Happy, happy.

Anyway - a few days ago I set up the required database tables to support
a DataSourceRealm for FORM authentication and I moved all my DataSource
config up to the <GlobalNamingResources> since I'm sure I read somewhere
that this had to be done.

That initially caused me problems until I added a <ResourceLink> to my
<Context> for each DataSource

        . . . . . . 

        <Context path="/hal" docBase="hal" debug="0" privileged="true"
reloadable="true">
        <Logger className="org.apache.catalina.logger.FileLogger" 
                prefix="HAL." suffix=".txt" timestamp="true"/>

                <!-- DataSources moved from here to
GlobalNamingResources area -->

                <Realm
className="org.apache.catalina.realm.DataSourceRealm" debug="99" 
                        dataSourceName="jdbc/Id" userTable="HAL_UserId"

                        userNameCol="Name" userCredCol="Password" 
                        userRoleTable="HAL_UserRole" roleNameCol="Role"
                        />
                <ResourceLink name="jdbc/Id" global="jdbc/Id"
type="javax.sql.DataSource"/>
                <ResourceLink name="jdbc/Static" global="jdbc/Static"
type="javax.sql.DataSource"/>
                <ResourceLink name="jdbc/Params" global="jdbc/Params"
type="javax.sql.DataSource"/>
                <ResourceLink name="jdbc/Control" global="jdbc/Control"
type="javax.sql.DataSource"/>
                <ResourceLink name="jdbc/SelmaData"
global="jdbc/SelmaData" type="javax.sql.DataSource"/>
                <ResourceLink name="jdbc/BartData"
global="jdbc/BartData" type="javax.sql.DataSource"/>
                <ResourceLink name="jdbc/Beauchamp"
global="jdbc/Beauchamp" type="javax.sql.DataSource"/>
        </Context>

        . . . . . . 



All the <DataSources> are set up along these lines..

                . . . . . . 

                <Resource name="jdbc/Id" auth="Container"
type="javax.sql.DataSource"/>
                <ResourceParams name="jdbc/Id">
                        <parameter>
                                <name>username</name>
                                <value>{deleted in mail}</value>
                        </parameter>
                        <parameter>
                                <name>password</name>
                                <value>{deleted in mail}</value>>
                        </parameter>
                        <parameter>
                                <name>driverClassName</name>
                                <value>com.inet.tds.TdsDriver</value>
                        </parameter>
                        <parameter>
                                <name>url</name>
                                <value>{deleted in mail}</value>
                        </parameter>
                </ResourceParams>
        
                . . . . . . 


So I think everthing looks okay.


Problems
========

1) With the above setup I get...
--------------------------------

ServerLifecycleListener: createMBeans: MBeanException
java.lang.Exception: ManagedBean is not found with DataSourceRealm
        at
org.apache.catalina.mbeans.MBeanUtils.createMBean(MBeanUtils.java:642)

In my Tomcat console, unless I comment out these lines in server.xml

        <Listener
className="org.apache.catalina.mbeans.ServerLifecycleListener"
debug="0"/>
        <Listener
className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"
debug="0"/>

If I *do* comment them out the Tomcat Admin tool will complain.



2) Sometimes my JSPs just start failing with this message...
------------------------------------------------------------

org.apache.jasper.JasperException: Unable to get connection, DataSource
invalid: "Cannot load JDBC driver class 'null'"
        at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.ja
va:254)
        at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)

even though they may have been running fine beforehand.



Any help would be great.  Sorry for the length of the message, it's
driving me crazy!


Many thanks,
Chris






















---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to