I have some strange behavior showing up with Tomcat 5.0.30.

I have a host configured with two contexts. The contexts are deployed
as wars. But, they have configuration information in the server.xml.
Each context has it's own realm defined within the context tag. The
contexts are named "/admin" and "/customer". The "/customer" context
is configured to use a DatasourceRealm for authentication. The
"/admin" is configured to use a custom realm called
ReverseProxyRealm5. Both contexts share a jndi datasource resource
defined in the DefaultContext tag.

The odd behavior that i am experiencing happens during an auto reload
of the context after both of the war files have been changed. Once the
contexts have reloaded and the new war files have been autoDeployed I
lose the use of my ReverseProxyRealm5 on the admin context.  But, not
only do i lose it, it also switches to using the DatasourceRealm as
defined in the customer context.

After i  stop and start tomcat everything is fine again. I have tested
this out running Tomcat from the command line and within eclipse with
the same resulting behavior.

I deleted the  /conf/Catalina directory and the /work/Catalina
directory for good  measure. But, all the behavior continues.

Attached is my server.xml host file without the sensitive info.

<Host name="oi" debug="0" autoDeploy="true"
appBase="D:\myappbase\projects\oi\dist\war">
        
    <Logger className="org.apache.catalina.logger.FileLogger"
        directory="logs" prefix="orderinquiry_log." suffix=".txt"
        timestamp="true" />
    
    <DefaultContext>
        <Resource name="jdbc/oi" auth="Container"
            type="javax.sql.DataSource" />

        <ResourceParams name="jdbc/oi">
            <parameter>
                <name>factory</name>
                <value>
                    org.apache.commons.dbcp.BasicDataSourceFactory
                </value>
            </parameter>
            <parameter>
                <name>driverClassName</name>
                <value>com.ibm.as400.access.AS400JDBCDriver</value>
            </parameter>
            <parameter>
                <name>url</name>
                <value>
                    jdbc:as400://some.url.here.org;naming=system;date format=iso
                </value>
            </parameter>
            <parameter>
                <name>username</name>
                <value>dudesusername</value>
            </parameter>
            <parameter>
                <name>password</name>
                <value>dudespassword</value>
            </parameter>
            <parameter>
                <name>maxActive</name>
                <value>20</value>
            </parameter>
            <parameter>
                <name>maxIdle</name>
                <value>10</value>
            </parameter>
            <parameter>
                <name>maxWait</name>
                <value>-1</value>
            </parameter>
            <parameter>
                <name>validationQuery</name>
                <value>SELECT 0 FROM qsqptabl</value>
            </parameter>
        </ResourceParams>
    </DefaultContext>
        
    <Context path="/customer" debug="0" 
                reloadable="true" crossContext="false">
        
        <Realm className="org.apache.catalina.realm.DataSourceRealm"
            debug="0" dataSourceName="jdbc/orderinquiry"
            localDataSource="true" userTable="UTABLE" 
            userNameCol="UNAMECOL" userCredCol="PAZZWORD" 
            userRoleTable="UTABLERL" roleNameCol="UROLE" />

    </Context>

    <Context path="/admin" debug="0"
                reloadable="true" crossContext="false">
                
        <Realm
            className="com.plumcreek.commons.security.ReverseProxyRealm5" />

    </Context>

</Host>

Thanks, 
Brandon

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

Reply via email to