I think the use of the Resource element in the server.xml is the same as
using the resource-ref element in the web.xml.  From the docs:

    <Resource> - Configure the name and data type of a resource made
available to the application (equivalent to the inclusion of a
<resource-ref> element in the web application deployment descriptor).

So you can probably remove that from your web.xml.

As for the exception you're getting, you might need to use the full JNDI
name in iBATIS:

    java:/comp/env/jdbc/AS400B

If I remember correctly, Tomcat automatically prepends the "java:/comp/env/"
bit to declared JNDI resources.

Cheers,
Chris

On 9/27/07 9:32 AM, "Ashish Kulkarni" <[EMAIL PROTECTED]> wrote:

> Hi
> This is what i have done,
> in my server.xml file i have added in host element
> <Context path="/approvals6302" docBase="c:\\approvals6302\\" debug="5"
> reloadable="true" crossContext="true">
> <Resource name="jdbc/AS400B" type="javax.sql.DataSource" password="password"
>   driverClassName="com.ibm.as400.access.AS400JDBCDriver" maxIdle="2"
> maxWait="5000" validationQuery="select * from PODATA" username="userid"
> url="jdbc:as400:AS400B/RPTSTEXTDB;naming=system;date format=iso;time
> format=hms;prompt=false" maxActive="4" />
> </Context>
> 
> Then in web.xml i have added
> <resource-ref>
>   <description>DB Connection</description>
>    <res-ref-name>jdbc/AS400B</res-ref-name>
>    <res-type>javax.sql.DataSource</res-type>
>    <res-auth>Container</res-auth>
> </resource-ref>
> 
> and in SqlMapConfig.xml i have added
> <transactionManager type="JDBC">
>     <dataSource type="JNDI">
>        <property name="DataSource" value="jdbc/AS400B"/>
>     </dataSource>
> </transactionManager>
> 
> When i start tomcat i get the following error
> com.ibatis.sqlmap.client.SqlMapException: There was an error configuring
> JndiDataSourceDaoTransactionPool. Cause: javax.naming.NameNotFoundException:
> Name jdbc is not bound in this Context
> 
> 
> 
> 
> 
> 
> 
> On 9/27/07, Christopher Lamey <[EMAIL PROTECTED]> wrote:
>> 
>> Hello,
>> 
>> You then need to add a ResourceLink either in conf/context.xml or in the
>> webapp's specific context file (if you're using one).
>> 
>> I don't know what version of Tomcat you're using, but here are the JNDI
>> docs
>> for 5.5:
>> 
>> http://tomcat.apache.org/tomcat-5.5-doc/jndi-resources-howto.html
>> 
>> PS: I think you can add a resource-env-ref to your webapp's web.xml to
>> link
>> to the global JNDI resource too, but I usually go with the ResourceLink in
>> the context files to avoid mucking with web.xml.
>> 
>> Cheers,
>> Chris
>> 
>> On 9/27/07 7:58 AM, "Ashish Kulkarni" <[EMAIL PROTECTED]> wrote:
>> 
>>> Hi
>>> I am using tomcat application server, and using the Administator
>> application
>>> i added JNDI for my database, i found that it had added following entry
>> in
>>> server.xml file
>>> 
>>> <Resource
>>> name="AS400B"
>>> type="javax.sql.DataSource"
>>> password="password"
>>> driverClassName="com.ibm.as400.access.AS400JDBCDriver"
>>> maxIdle="2"
>>> maxWait="5000"
>>> validationQuery="select * from PODATA"
>>> username="userid"
>>> url="jdbc:as400:AS400B/RPTSTEXTDB;naming=system;date format=iso;time
>>> format=hms;prompt=false"
>>> maxActive="4"/>
>>> 
>>> 
>>> On 9/26/07, Richard Yee <[EMAIL PROTECTED]> wrote:
>>>> 
>>>> You need to set up the connection pool in your application server
>>>> configuration. What AppServer are you using?
>>>> 
>>>> -Richard
>>>> 
>>>> Ashish Kulkarni wrote:
>>>>> Hi
>>>>> I did modify this to look like below
>>>>> <transactionManager type="JDBC">
>>>>>     <dataSource type="JNDI">
>>>>>           <property name="DataSource" value="AS400B"/>
>>>>>     </dataSource>
>>>>> </transactionManager>
>>>>> 
>>>>> But i get following error in tomcat, I have created a data sourse
>>>>> AS400B in tomcat
>>>>> 
>>>>> Caused by: javax.naming.NameNotFoundException: Name AS400B is not
>>>>> bound in this Context
>>>>> at
>>>>> com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(
>>>> SqlMapConfigParser.java:81)
>>>>> at
>>>>> com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(
>>>> SqlMapClientBuilder.java:62)
>>>>> at com.pfizer.maps.data.GetSQLConfigForWeb.getSqlMapInstance
>>>>> (GetSQLConfigForWeb.java:49)
>>>>> at
>>>>> com.pfizer.maps.servlet.Log4JInitServlet.init(Log4JInitServlet.java
>> :104)
>>>>> at
>>>>> org.apache.catalina.core.StandardWrapper.loadServlet(
>>>> StandardWrapper.java:1105)
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> On 9/26/07, *Ashish Kulkarni* <[EMAIL PROTECTED]
>>>>> <mailto:[EMAIL PROTECTED]>> wrote:
>>>>> 
>>>>>     Hi
>>>>>     Is there any example of setting up ibatis to use JNDI as data
>>>> source,
>>>>>     I have the following, how do i change it to use JNDI
>>>>> 
>>>>>     <properties resource="SqlMapConfigAS400.properties" />
>>>>>     <transactionManager type="JDBC">
>>>>>     <dataSource type="SIMPLE">
>>>>>     <property name="JDBC.Driver" value="${driver}" />
>>>>> 
>>>>>     <property name="JDBC.ConnectionURL" value="${url}" />
>>>>> 
>>>>>     <property name="JDBC.Username" value="${username}" />
>>>>> 
>>>>>     <property name="JDBC.Password" value="${password}" />
>>>>>     </dataSource>
>>>>>     </transactionManager>
>>>>> 
>>>>>     And i have SqlMapConfigAS400.properties where i have
>>>>>     driver=com.ibm.as400.access.AS400JDBCDriver
>>>>> 
>>>>>     url=jdbc:as400:AS400B/RPTSTEXTDB;naming=system;date
>>>>>     format=iso;time format=hms;prompt=false
>>>>> 
>>>>>     username=user
>>>>> 
>>>>>     password=password
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>> 
>>>> 
>> 
>> 

Reply via email to