OK Chris,

Thanks

Tom



---- Original message ----
>Date: Tue, 19 Jun 2007 18:23:08 -0400
>From: Christopher Schultz <[EMAIL PROTECTED]>  
>Subject: Re: JNDI & Tomcat  
>To: Tomcat Users List <users@tomcat.apache.org>
>
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>Tom,
>
>1. DO NOT hijack threads.
>2. DO post the things you have already tried.
>
>- -chris
>
>Tom Miller wrote:
>> Any one have a better document on howto on JNDI & Tomcat 
>> than this link
>> http://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-
>> examples-howto.html?
>> 
>> I am trying to set up JNDI to work with Tomcat 5.5.7
>> I had followed instructions on apache.org but have not 
able 
>> to get it work yet.  
>> 
>> Any hints will be appreciate.
>> 
>> Thank you.
>> 
>> Tom
>> 
>> 
>> 
>> ---- Original message ----
>>> Date: Tue, 19 Jun 2007 12:35:10 -0400
>>> From: Christopher Schultz 
<[EMAIL PROTECTED]>  
>>> Subject: Re: Data Sources Overwritten  
>>> To: Tomcat Users List <users@tomcat.apache.org>
>>>
>> Jeff,
>> You have not followed my suggestions:
>> 
>> 1. Remove all JNDI datasource information from server.xml 
>>> and never put
>> it back in.
>> 
>> 2. Use a META-INF/context.xml file and bundle it into 
your 
>>> WAR file for
>> deployment. context.xml should include 100% of the JNDI 
>>> data source
>> configuration that you need for your app. Consider using 
>>> <Resource> and
>> specifying everything instead of trying to use 
>>> <Resource> /and/
>> <ResourceParams>.
>> 
>> 3. Stop using the Manager to do anything at all.
>> 
>> This will allow your application to setup its own data 
>>> source instead of
>> relying on the server to have it ready to go before 
>>> deployment.
>> Re-deployments will re-setup the connection, just as it 
was 
>>> intended.
>> This is all documented (poorly, I might add), on this 
page:
>> http://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-
>>> examples-howto.html
>> Under "MySQL DBCP Example / 2. server.xml configuration", 
>>> replace the
>> direction to put the configuration "into server.xml 
inside 
>>> your
>> <Context> element" with "into context.xml inside your 
>>> <Context> element".
>> -chris
>> 
>> Jeffrey C. Baldwin wrote:
>>>>> Also, here is a copy of my server.xml.
>>>>>
>>>>> <?xml version='1.0' encoding='utf-8'?>
>>>>> <Server>
>>>>>   <Listener 
>>> 
className="org.apache.catalina.mbeans.ServerLifecycleListener
>>> "/>
>>>>>   <Listener
>>>>>
>>> 
className="org.apache.catalina.mbeans.GlobalResourcesLifecycl
>>> eListener"/>
>>>>>   <GlobalNamingResources>
>>>>>     <Environment name="simpleValue" 
>>> type="java.lang.Integer" value="30"/>
>>>>>     <Resource auth="Container" description="User 
database 
>>> that can be
>>>>> updated and saved" name="UserDatabase"
>>>>> type="org.apache.catalina.UserDatabase"/>
>>>>>     <ResourceParams name="UserDatabase">
>>>>>       <parameter>
>>>>>         <name>factory</name>
>>>>>         
>>> 
<value>org.apache.catalina.users.MemoryUserDatabaseFactory</v
>>> alue>
>>>>>       </parameter>
>>>>>       <parameter>
>>>>>         <name>pathname</name>
>>>>>         <value>conf/tomcat-users.xml</value>
>>>>>       </parameter>
>>>>>     </ResourceParams>
>>>>>   </GlobalNamingResources>
>>>>>   <Service name="Catalina">
>>>>>     <Connector acceptCount="100" 
connectionTimeout="20000"
>>>>> disableUploadTimeout="true" port="8080" 
>>> redirectPort="8443"
>>>>> maxSpareThreads="75" maxThreads="150"
>>>>> minSpareThreads="25">
>>>>>     </Connector>
>>>>>     <Connector port="8009" protocol="AJP/1.3"
>>>>>
>>> 
protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandle
>>> r"
>>>>> redirectPort="8443">
>>>>>     </Connector>
>>>>>     <Engine defaultHost="localhost" name="Catalina">
>>>>> <Host name="localhost" debug="0" appBase="webapps" 
>>> unpackWARs="true"
>>>>> autoDeploy="true" xmlValidation="false" 
>>> xmlNamespaceAware="false">
>>>>> <Valve 
>>> className="org.apache.catalina.valves.AccessLogValve"
>>>>> directory="logs" prefix="localhost_access_log." 
>>> suffix=".txt"
>>>>> pattern="common" resolveHosts="fal
>>>>> se" />
>>>>> <Logger 
className="org.apache.catalina.logger.FileLogger"
>>>>> directory="logs" prefix="localhost_log." suffix=".txt" 
>>> timestamp="true" />
>>>>> <Context debug="0" docBase="mrs2" path="/mrs2" 
>>> reloadable="true">
>>>>> <Logger 
className="org.apache.catalina.logger.FileLogger"
>>>>> prefix="localhost_mrs2_log." suffix=".txt" 
>>> timestamp="true"/>
>>>>>                    <Resource name="jdbc/ZosDataSource" 
>>> auth="Container"
>>>>> type="javax.sql.DataSource"></Resource>
>>>>>                    <ResourceParams 
>>> name="jdbc/ZosDataSource">
>>>>>                        <parameter>
>>>>>                            <name>factory</name>
>>>>>
>>>>>
>>> 
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>maxActive</name>
>>>>>                            <value>5</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>maxIdle</name>
>>>>>                            <value>1</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>maxWait</name>
>>>>>                            <value>10000</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>username</name>
>>>>>                            <value>TS59MRS</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>password</name>
>>>>>                            <value>password</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>driverClassName</name>
>>>>>                            
>>> <value>com.ibm.db2.jcc.DB2Driver</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>url</name>
>>>>>
>>>>> 
<value>jdbc:db2://123.456.789.120:5019/NETSNDB01</value>  
>>> <!--
>>>>> production 123.456.789.120:5019/NETSNDB01 -->
>>>>>                        </parameter>
>>>>>                    </ResourceParams>
>>>>>                    <Resource name="jdbc/mssql2000ds" 
>>> auth="Container"
>>>>> type="javax.sql.DataSource"></Resource>
>>>>>                    <ResourceParams 
>>> name="jdbc/mssql2000ds">
>>>>>                        <parameter>
>>>>>                            <name>factory</name>
>>>>>
>>>>>
>>> 
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>maxActive</name>
>>>>>                            <value>10</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>maxIdle</name>
>>>>>                            <value>1</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>maxWait</name>
>>>>>                            <value>10000</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>username</name>
>>>>>                            <value>rreddy</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>password</name>
>>>>>                            <value>password</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>driverClassName</name>
>>>>>                            
>>> <value>net.sourceforge.jtds.jdbc.Driver</value>
>>>>>                        </parameter>
>>>>>                        <parameter>
>>>>>                            <name>url</name>
>>>>>
>>>>>
>>> 
<value>jdbc:jtds:sqlserver://123.456.789.96/mrs;user=rreddy;p
>>> assword=pv123ankita</value>
>>>>>                         </parameter>
>>>>>                    </ResourceParams>
>>>>>                         </Context>
>>>>>                         </Host>
>>>>> <Logger 
className="org.apache.catalina.logger.FileLogger"
>>>>> prefix="catalina_log." suffix=".txt" timestamp="true"/>
>>>>>       <Realm 
>>> className="org.apache.catalina.realm.UserDatabaseRealm"/>
>>>>>     </Engine>
>>>>>   </Service>
>>>>> </Server>
>>>>>
>>>>>
>>>>>
>>>>> Jeffrey C. Baldwin wrote:
>>>>>> Chris,
>>>>>>
>>>>>> Thank you for the time. However, I'm still not having 
>>> any luck...
>>>>>> Again, I have the entries in server.xml, so if I 
restart 
>>> the Tomcat
>>>>>> service AFTER deploying the app, all is well.  
However, 
>>> I want the
>>>>>> application developers to be able to deploy their app 
>>> and not have to,
>>>>>> or need to contact me to, restart the Tomcat service.
>>>>>>
>>>>>> Thanks again!
>>>>>>
>>>>>> In:
>>>>>> /usr/local/tomcat/webapps/mrs2/META-INF
>>>>>>
>>>>>> I have:
>>>>>>
>>>>>> <?xml version='1.0' encoding='utf-8'?>
>>>>>> <Context docBase="/usr/local/tomcat/webapps/mrs2" 
>>> path="/mrs2"
>>>>>> workDir="work/Catalina/localhost/mrs2">
>>>>>>   <Resource auth="Container" description="zos DB2 
>>> Connection"
>>>>>> name="jdbc/ZosDataSource" 
type="javax.sql.DataSource"/>
>>>>>>   <Resource auth="Container" description="local DB2 
>>> Connection"
>>>>>> name="jdbc/db2ds" type="javax.sql.DataSource"/>
>>>>>>   <Resource auth="Container" description="msql DB 
>>> Connection"
>>>>>> name="jdbc/mssql2000ds" type="javax.sql.DataSource"/>
>>>>>>   <ResourceParams name="jdbc/ZosDataSource">
>>>>>>     <parameter>
>>>>>>       <name>maxWait</name>
>>>>>>       <value>10000</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>maxActive</name>
>>>>>>       <value>2</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>password</name>
>>>>>>       <value>test</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>url</name>
>>>>>>       
>>> <value>jdbc:db2://123.456.789.120:5019/NETSNDB01</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>driverClassName</name>
>>>>>>       <value>com.ibm.db2.jcc.DB2Driver</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>maxIdle</name>
>>>>>>       <value>1</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>username</name>
>>>>>>       <value>TS59MRS</value>
>>>>>>     </parameter>
>>>>>>   </ResourceParams>
>>>>>>   <ResourceParams name="jdbc/db2ds">
>>>>>>     <parameter>
>>>>>>       <name>driverClassName</name>
>>>>>>       <value></value>
>>>>>>     </parameter>
>>>>>>   </ResourceParams>
>>>>>>   <ResourceParams name="jdbc/mssql2000ds">
>>>>>>     <parameter>
>>>>>>       <name>maxWait</name>
>>>>>>       <value>10000</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>maxActive</name>
>>>>>>       <value>2</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>password</name>
>>>>>>       <value>password</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>url</name>
>>>>>>
>>> 
<value>jdbc:jtds:sqlserver://123.456.789.96/mrsuat;user=rredd
>>> y;password=password</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>driverClassName</name>
>>>>>>       <value>net.sourceforge.jtds.jdbc.Driver</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>maxIdle</name>
>>>>>>       <value>1</value>
>>>>>>     </parameter>
>>>>>>     <parameter>
>>>>>>       <name>username</name>
>>>>>>       <value>rreddy</value>
>>>>>>     </parameter>
>>>>>>   </ResourceParams>
>>>>>> </Context>
>>>>>>
>>>>>>
>>>>>> Christopher Schultz wrote:
>>>>>>> Jeffrey,
>>>>>>>
>>>>>>> Jeffrey C. Baldwin wrote:
>>>>>>>> I appreciate all the input guys.  I put everything 
>>> into server.xml and
>>>>>>>> the application is working great.
>>>>>>> You should put that setup into META-INF/context.xml 
in 
>>> your webapp
>>>>>>> directory (or your WAR file) instead of into 
>>> server.xml. This is likely
>>>>>>> to fix your problem.
>>>>>>>
>>>>>>>> So, my question is, I was trying to set it up so 
that 
>>> my developers
>>>>>>>> could just deploy/undeploy/stop/start their apps 
all 
>>> through the web,
>>>>>>>> w/out needing shell access to the server.  Is there 
a 
>>> way for them to
>>>>>>>> restart the Tomcat service through a web interface?
>>>>>>> Restart the entire Tomcat service? I don't think 
Tomcat 
>>> includes this
>>>>>>> capability. You'd have to write your own, separate 
>>> utility app that can
>>>>>>> take down and restart Tomcat.
>>>>>>>
>>>>>>>> Is it normal that they should have to restart the 
>>> entire Tomcat service
>>>>>>>> for their app to be able to talk to the configured 
>>> database connections
>>>>>>>> in server.xml?
>>>>>>> No, it's not. Configuring those connections in 
>>> context.xml will
>>>>>>> certainly alleviate this problem.
>>>>>>>
>>>>>>> -chris
>>>>>>>
>>>>>> ------------------------------------------------------
---
>>> ------------
>>>>>> To start a new topic, e-mail: users@tomcat.apache.org
>>>>>> To unsubscribe, e-mail: users-
>>> [EMAIL PROTECTED]
>>>>>> For additional commands, e-mail: users-
>>> [EMAIL PROTECTED]
>>>>>>
>>>>>> ------------------------------------------------------
---
>>> ------------
>>>>>> To start a new topic, e-mail: users@tomcat.apache.org
>>>>>> To unsubscribe, e-mail: users-
>>> [EMAIL PROTECTED]
>>>>>> For additional commands, e-mail: users-
>>> [EMAIL PROTECTED]
>>>>> -------------------------------------------------------
---
>>> -----------
>>>>> To start a new topic, e-mail: users@tomcat.apache.org
>>>>> To unsubscribe, e-mail: users-
>>> [EMAIL PROTECTED]
>>>>> For additional commands, e-mail: users-
>>> [EMAIL PROTECTED]
>>>
>- ----------------------------------------------------------
--
>> ---------
>To start a new topic, e-mail: users@tomcat.apache.org
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: users-
>> [EMAIL PROTECTED]
>
>> ----------------------------------------------------------
-----------
>> To start a new topic, e-mail: users@tomcat.apache.org
>> To unsubscribe, e-mail: users-
[EMAIL PROTECTED]
>> For additional commands, e-mail: users-
[EMAIL PROTECTED]
>
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG v1.4.7 (MingW32)
>Comment: Using GnuPG with Mozilla - 
http://enigmail.mozdev.org
>
>iD8DBQFGeFdM9CaO5/Lv0PARAidyAJ9VB7T8MuNK99A9b3DM/DVOY52w2gCf
Qq+r
>QZtVQUpYeBJaK/UtZcZjOjQ=
>=Fjfe
>-----END PGP SIGNATURE-----
>
>------------------------------------------------------------
---------
>To start a new topic, e-mail: users@tomcat.apache.org
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: users-
[EMAIL PROTECTED]
>

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to