ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher Lamey <cla...@localmatters.com>
Subject Re: iBatis - tomcat JNDI setup
Date Thu, 27 Mar 2008 15:54:23 GMT
That looks to me like iBATIS is trying to create a connection pool rather
than using the one in JNDI.

Can you send your whole SqlMapConfig.xml?

On 3/27/08 6:47 AM, "Tom Henricksen" <TomH@A-t-g.com> wrote:

> I tried what you suggested (removing the entry from web.xml and the
> resource link from the context.xml) and I now get this error message
> from my application.
> 
> org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of
> class '' for connect URL 'null'
> at
> org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource
> .java:780)
> at
> org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.ja
> va:540)
> at
> com.ibatis.sqlmap.engine.transaction.jdbc.JdbcTransaction.init(JdbcTrans
> action.java:48)
> at
> com.ibatis.sqlmap.engine.transaction.jdbc.JdbcTransaction.getConnection(
> JdbcTransaction.java:89)
> at
> com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQuery
> ForList(GeneralStatement.java:123)
> at
> com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMap
> ExecutorDelegate.java:615)
> 
> Thanks,
> Tom
> 
> 
> -----Original Message-----
> From: Tom Henricksen [mailto:TomH@A-t-g.com]
> Sent: Wednesday, March 26, 2008 9:09 PM
> To: user-java@ibatis.apache.org
> Subject: RE: iBatis - tomcat JNDI setup
> 
> I tried following:
> http://tomcat.apache.org/tomcat-5.5-doc/jndi-resources-howto.html
> And it has both the context.xml and the entry in the web.xml.
> I will try without the web.xml and see.
> 
> Thanks,
> Tom
> 
> -----Original Message-----
> From: Christopher Lamey [mailto:clamey@localmatters.com]
> Sent: Wed 3/26/2008 4:23 PM
> To: user-java@ibatis.apache.org
> Subject: Re: iBatis - tomcat JNDI setup
>  
> Having the ResourceLink and the Resource in the context xml might be
> screwing it up.  You're telling it to link to a global JNDI object, but
> it
> doesn't exist at that level.
> 
> Also using a resource-ref in the web.xml and a Resource element in the
> context.xml is redundant.
> 
> Read the Resource Definitions section of this page:
> 
> http://tomcat.apache.org/tomcat-5.5-doc/config/context.html
> 
> Declaring a Resource in the context xml allows you to drop in JNDI
> objects
> for you webapp without having to muck with web.xml.
> 
> On 3/26/08 3:17 PM, "Tom Henricksen" <TomH@A-t-g.com> wrote:
> 
>> I am trying to setup Tomcat JNDI to work on our application with
> iBatis.
>> 
>> I get the following error:
>> 
>>  
>> 
>> java.lang.RuntimeException: Error occurred.  Cause:
>> com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause:
>> java.lang.RuntimeException: Error parsing XPath
>> '/sqlMapConfig/transactionManager/dataSource/end()'.  Cause:
>> com.ibatis.sqlmap.client.SqlMapException: There was an error
> configuring
>> JndiDataSourceTransactionPool. Cause:
>> javax.naming.NameNotFoundException: Name jdbc is not bound in this
>> Context
>> 
>>       at
>> 
> com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConf
>> igParser.java:89)
>> 
>>       at
>> 
> com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapCli
>> entBuilder.java:63)
>> 
>>       at
>> 
> com.advtechgrp.bop.medical.data.SqlMapsService.initSqlMaps(SqlMapsServic
>> e.java:58)
>> 
>>       at
>> 
> com.advtechgrp.bop.medical.web.MedicalApplication.initialize(MedicalAppl
>> ication.java:106)
>> 
>>       at
>> 
> com.advtechgrp.bop.medical.web.listener.FacesListener.contextInitialized
>> (FacesListener.java:63)
>> 
>>       at
>> 
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.j
>> ava:3831)
>> 
>>       at
>> 
> org.apache.catalina.core.StandardContext.start(StandardContext.java:4323
>> )
>> 
>>       at
>> 
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.ja
>> va:823)
>> 
>>  
>> 
>>  
>> 
>> SqlMapConfig.xml ibatis 2.30
>> 
>>       <transactionManager type="JDBC">
>> 
>>             <dataSource type="JNDI">
>> 
>>                   <property name="DataSource"
>> value="java:comp/env/jdbc/medical"/>
>> 
>>             </dataSource>
>> 
>>       </transactionManager>
>> 
>>  
>> 
>> context.xml - tomcat 5.0.30
>> 
>> <?xml version='1.0' encoding='utf-8'?>
>> 
>> <Context debug="4"
>> 
>>       docBase="C:/Java/eclipse-europa/europa-workspace/bop-med/web"
>> 
>>       path="/bop-med" reloadable="true"
>> 
>>       workDir="work\Catalina\localhost\bop-med">
>> 
>>       
>> 
>>       <ResourceLink global="jdbc/medical" name="jdbc/medical"
>> 
>>             type="javax.sql.DataSource"/>
>> 
>>       
>> 
>>       <Resource name="jdbc/medical" auth="Container"
>> 
>>                 type="javax.sql.DataSource" username="user"
>> 
>>                 password="pass"
>> 
>>                 driverClassName="com.ibm.db2.jcc.DB2Driver"
>> 
>>                 url="jdbc:db2://srv:50000/medical"
>> 
>>                 maxActive="8" maxIdle="4"/>
>> 
>> </Context>
>> 
>>  
>> 
>>             In application web.xml
>> 
>>  
>> 
>>       <resource-ref>
>> 
>>             <description>
>> 
>>                   jdbc/medical
>> 
>>             </description>
>> 
>>             <res-ref-name>jdbc/medical</res-ref-name>
>> 
>>             <res-type>javax.sql.DataSource</res-type>
>> 
>>             <res-auth>Container</res-auth>
>> 
>>       </resource-ref>
>> 
>>  
>> 
>> Any suggestions?
>> 
>>  
>> 
>> Thanks in advance,
>> 
>>  
>> 
>> Tom Henricksen
>> Consultant
>> Advanced Technologies Group, Inc.
>> 
>> 1601 48th Street, Suite 220
>> 
>> West Des Moines, IA 50265
>> 
>> *  Office:     (515) 221-9344 Ext 138
>> 
>> *  Fax:         (515) 221-1266
>> * Email:     tomh@a-t-g.com
>> 
>>  
>> 
> 
> 


Mime
View raw message