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:     [EMAIL PROTECTED]

 

Reply via email to