我的配置文件是这样的
<!-- 配置JNDI sessionFactory 
配置数据源JNDI -->
<bean id="dataSource"
class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="xcgl" />
</bean>
<!-- DXYSSJ  start-->
<bean id="dataSource2"
class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="yssj" />
</bean>
<bean id="sqlMapClient2"
class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation">
<value>classpath:SqlMapConfig.xml</value>
</property>
<property name="dataSource">
<ref local="dataSource2" />
</property>
</bean>
<bean id="transactionManager2"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource2" />
</bean>
<tx:advice id="txAdvice2" transaction-manager="transactionManager2">
<tx:attributes>
<tx:method name="save*" propagation="REQUIRED" />
<tx:method name="del*" propagation="REQUIRED" />
<tx:method name="update*" propagation="REQUIRED" />
<tx:method name="*" read-only="true" />
</tx:attributes>
</tx:advice>
<!--DXYSSJ  end -->
<bean id="sqlMapClient"
class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation">
<value>classpath:SqlMapConfig.xml</value>
</property>
<property name="dataSource">
<ref local="dataSource" />
</property>
</bean> <bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean> <tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="save*" propagation="REQUIRED" />
<tx:method name="del*" propagation="REQUIRED" />
<tx:method name="update*" propagation="REQUIRED" />
<tx:method name="*" read-only="true" />
</tx:attributes>
</tx:advice> <aop:config>
<aop:pointcut id="allManagerMethod"
expression="execution(* com.dydr.xcgl.service.impl.*.*(..))" />
<aop:advisor advice-ref="txAdvice"
pointcut-ref="allManagerMethod" />
<aop:advisor advice-ref="txAdvice2"
pointcut-ref="allManagerMethod" />
</aop:config>
在程序调用的时候 报的错:org.springframework.jdbc.BadSqlGrammarException: SqlMapClient operation; bad SQL
 grammar []; nested exception is com.ibatis.common.jdbc.exception.NestedSQLExcep
tion:--- The error occurred in com/dydr/xcgl/pojo/xml/Cygda.xml.
--- The error occurred while applying a parameter map.
--- Check the Cygda.queryCygdaxx-InlineParameterMap.
--- Check the statement (query failed).
--- Cause: java.sql.SQLException: [BEA][Oracle JDBC Driver][Oracle]ORA-00942: ta
ble or view does not exist 找不到表 ,配置文件是不是配置错了还是调用还需要做哪些,我是新接触ibatis的

解决方案 »

  1.   

    The error occurred in com/dydr/xcgl/pojo/xml/Cygda.xml. 翻译过来是:这个错误发生在com/dydr/xcgl/pojo/xml/Cygda.xml中
      

  2.   

    The error occurred in com/dydr/xcgl/pojo/xml/Cygda.xml. 翻译过来是:这个错误发生在com/dydr/xcgl/pojo/xml/Cygda.xml中
      

  3.   

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE sqlMap      
        PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"      
        "http://ibatis.apache.org/dtd/sql-map-2.dtd"><sqlMap namespace="Cygda"> <typeAlias alias="cygda" type="com.dydr.xcgl.pojo.Cygda" />
    <parameterMap class="cygda" id="cygdapara">
    <parameter property="jh" javaType="string" jdbcType="VARCHAR" />
    </parameterMap>
    <!--储油罐档案信息的查询 -->
    <select id="queryCygdaxx" parameterClass="cygda"
    resultClass="cygda">
    <![CDATA[
    SELECT jh FROM ys_dba01
    ]]>
    </select>
    </sqlMap>这是涉及访问远端库的一个方法:其中ys_dba01表是远端数据库一个表 jndiname是yssj的,ys_dba01没有在Cygda.xml配置,我是更接触ibatis的,不熟,是不是调用问题还是ys_dba01没有在Cygda.xml配置,刚想到这个问题,可已经下班了,服务器听了,没法测试了,谢谢哥们帮助!!!