<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://blog.gmane.org/gmane.comp.java.ibatisdb.user">
    <title>gmane.comp.java.ibatisdb.user</title>
    <link>http://blog.gmane.org/gmane.comp.java.ibatisdb.user</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19232"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19230"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19228"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19226"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19224"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19222"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19220"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19218"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19216"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19213"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19209"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19206"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19202"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19199"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19196"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19194"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19192"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19189"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19185"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19176"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19232">
    <title>Dynamic table names in DELETE</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19232</link>
    <description>&lt;pre&gt;
iBatis 3 has wonderful ability in SELECT statements to provide dynamic
substitution before statement is prepared. For example this will work

&amp;lt;select id="foo"&amp;gt;SELECT * FROM $db$.MY_TABLE&amp;lt;/select&amp;gt;

However I can't make it work when trying to empty table

XML code:

&amp;lt;delete id="del" parameterType="String"&amp;gt;DELETE FROM $db$.MY_TABLE&amp;lt;/delete&amp;gt;
&amp;lt;!-- and I also tried --&amp;gt;
&amp;lt;delete id="del" parameterType="String"&amp;gt;DELETE FROM $0$.MY_TABLE&amp;lt;/delete&amp;gt;

Java code:

// method defined as
del(String db);
// and executed as
mapper.del("MY_DB");

I get message complaining that Database '$db$' does not exist

Anyone can suggest the solution? I'm on Teradata db and it is setup in the
way that I need provide db names in query or else I get Object not found

&lt;/pre&gt;</description>
    <dc:creator>droidin.net</dc:creator>
    <dc:date>2010-07-19T03:06:45</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19230">
    <title>Ibator 1.2.2</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19230</link>
    <description>&lt;pre&gt;Hi,

I built ibator 1.2.2 from sources downloaded from 
http://svn.apache.org/repos/asf/ibatis/java/ibator/trunk/core/
and create the JAR file.
The problem is that when I run the tool on a configuration file,
which worked with the previous version, I get  

$ java -jar ibator-1.2.2.jar -configfile ../conf/ibatorConfig.xml 
java.net.MalformedURLException
at java.net.URL.&amp;lt;init&amp;gt;(URL.java:601)
at java.net.URL.&amp;lt;init&amp;gt;(URL.java:464)
at java.net.URL.&amp;lt;init&amp;gt;(URL.java:413)
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager
  .setupCurrentEntity(XMLEntityManager.java:650)
at com.sun.org.apache.xerces.internal.impl
  .XMLEntityManager.startEntity(XMLEntityManager.java:1315)
at com.sun.org.apache.xerces.internal.impl
.XMLEntityManager.startDTDEntity(XMLEntityManager.java:1282)
at com.sun.org.apache.xerces.internal.impl
  .XMLDTDScannerImpl.setInputSource(XMLDTDScannerImpl.java:283)
at com.sun.org.apache.xerces.internal.impl
  .XMLDocumentScannerImpl$DTDDriver.dispatch(XMLDocumentScannerImpl.java:1193)
at com.sun.org.apache.xerces.internal.impl
  .XMLDocumentScannerImpl$DTDDriver.next(XMLDocumentScannerImpl.java:1090)
at com.sun.org.apache.xerces.internal.impl
  .XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:1003)
at com.sun.org.apache.xerces.internal.impl
  .XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
at com.sun.org.apache.xerces.internal.impl
  .XMLDocumentFragmentScannerImpl
  .scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers
  .XML11Configuration.parse(XML11Configuration.java:807)
at com.sun.org.apache.xerces.internal.parsers
  .XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers
  .XMLParser.parse(XMLParser.java:107)
at com.sun.org.apache.xerces.internal.parsers
  .DOMParser.parse(DOMParser.java:225)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl
   .parse(DocumentBuilderImpl.java:283)
at org.apache.ibatis.ibator.config.xml.IbatorConfigurationParser
  .parseIbatorConfiguration(IbatorConfigurationParser.java:134)
at org.apache.ibatis.ibator.config.xml.IbatorConfigurationParser
  .parseIbatorConfiguration(IbatorConfigurationParser.java:107)
at org.apache.ibatis.ibator.config.xml.IbatorConfigurationParser
  .parseIbatorConfiguration(IbatorConfigurationParser.java:99)
at org.apache.ibatis.ibator.api.IbatorRunner.main(IbatorRunner.java:106)


Any idea, 

thanks.
Davide
&lt;/pre&gt;</description>
    <dc:creator>Panciz</dc:creator>
    <dc:date>2010-07-10T06:24:59</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19228">
    <title>Ibatis 3  and null values</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19228</link>
    <description>&lt;pre&gt;Hello,

I'm facing a weird problem when resultType is a Map : 


&amp;lt;select id="test" resultType="java.util.LinkedHashMap"&amp;gt;
  select 
    getDate() "Timestamp", 
    null      "Test"
&amp;lt;/select&amp;gt;


List&amp;lt;LinkedHashMap&amp;lt;Object, Object&amp;gt;&amp;gt; lignes = session.selectList("test");
                
for (Iterator it = ((LinkedHashMap&amp;lt;Object, Object&amp;gt;)    
lignes.get(0)).keySet().iterator(); it.hasNext();) 
                  System.out.println(it.next());
                
                  
The result is : 

   TIMESTAMP
   Timestamp
   1

Why is first column duplicated when the alias is in lowercase ? And why can't i
get the second column header when it contains null values ? 

Any help would be appreciated. 

Thx.
&lt;/pre&gt;</description>
    <dc:creator>Laurent MANNS</dc:creator>
    <dc:date>2010-07-05T08:58:24</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19226">
    <title>ibatis 3 and calling stored procedure</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19226</link>
    <description>&lt;pre&gt;Hi
Is there any place where it has updated information about calling stored
procedure from ibatis 3.0, i checked google and could not find any,
I was reading user guide and it says parameterMap is not used,

I tried the code below and seems it is working, but i would like to do this
using some methods from ibatis 3.0

&amp;lt;parameterMap id="swapParameters" type="java.util.HashMap" &amp;gt;
    &amp;lt;parameter property="id" jdbcType="VARCHAR" javaType="java.lang.String"
mode="INOUT"/&amp;gt;
    &amp;lt;parameter property="message" jdbcType="VARCHAR"
javaType="java.lang.String" mode="INOUT"/&amp;gt;
 &amp;lt;/parameterMap&amp;gt;

&amp;lt;select id="getValidPayment" statementType="CALLABLE"
resultType="java.lang.String" parameterMap="swapParameters"&amp;gt;
call SCHEMA.PROCEDURE (?,?)
&amp;lt;/select&amp;gt;

&lt;/pre&gt;</description>
    <dc:creator>Ashish Kulkarni</dc:creator>
    <dc:date>2010-06-28T16:03:21</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19224">
    <title>Inheritanc</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19224</link>
    <description>&lt;pre&gt;
Hi,
I am using iBatis 3.0 beta-9
How can inheritance or has-a relationship be specified for the following
case?

class A
   name: String

class B extends A
   id: Integer

 
Currently, I was trying to use "has-a" relationship - association to do it -
but, it is not working!
    &amp;lt;resultMap id="A" type="org.XXX.A"&amp;gt;       
        &amp;lt;result property="name" column="name" /&amp;gt;
        &amp;lt;association property="B" column="a_b_id" javaType="org.XXX.B"/&amp;gt;
    &amp;lt;/resultMap&amp;gt;

     &amp;lt;association property="B" column="a_b_id" javaType="org.XXX.B"&amp;gt;
        &amp;lt;id property="id" column="id" /&amp;gt;
    &amp;lt;/association&amp;gt;
&lt;/pre&gt;</description>
    <dc:creator>karthik085</dc:creator>
    <dc:date>2010-06-24T19:05:17</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19222">
    <title>Passing Oracle Table Types (Is it possible?)</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19222</link>
    <description>&lt;pre&gt;
Hi, 
I have folloiwng types defines in Oracle:

create or replace type position_obj as object
(
POSITION_ID  NUMBER,
PROD_TYPE  VARCHAR2(50),
);

create or replace type position_tab as table of position_obj;
create or replace type error_logs_obj is object
( 
MODULE_NAME   VARCHAR2(30),
DATABASE_UNIT VARCHAR2(30),
TABLE_NAME    VARCHAR2(30),
ERROR_MESS    VARCHAR2(4000),
CREATE_TIME   DATE,
USER_NAME     VARCHAR2(30)
);
create or replace type error_logs_tab is table of error_logs_obj;

And my Oracle SP is:
  PROCEDURE insert_position(p_position_tab  position_tab
                           ,o_error_msg_tab OUT error_logs_tab)

How do i call above SP using iBatis 2.3.4 ? Please let me know if its
possible or not. 

Thanks &amp;amp; Regards,
Deepak
&lt;/pre&gt;</description>
    <dc:creator>deepak123</dc:creator>
    <dc:date>2010-06-18T10:11:58</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19220">
    <title>Lazy Loading per ResultMap</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19220</link>
    <description>&lt;pre&gt;
Hi all,

  Currently, lazy loading is enabled/disabled globally for all results.  It
would be very useful (for me) to specify the load per association or
collection within the result-map itself.  Is there any way to do this via
the plugin architecture?  Does anyone have any thoughts with regard to this?

Thanks,

Mike
&lt;/pre&gt;</description>
    <dc:creator>moffit</dc:creator>
    <dc:date>2010-06-17T16:51:14</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19218">
    <title>SQLMap Question - Select Statement</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19218</link>
    <description>&lt;pre&gt;
I have a quick question about writing a select statement that returns an
object inside of another object...

Say I have a Java bean named Message that has an instance variable named
statusid which is a long. I also have an enum named Status that contains
statusid (long) and statusdesc (String). These two classes map to Oracle
tables named MESSAGE and STATUS respectively...

Right now the select statement correctly returns the statusid value from the
db and sets it in the Message object. However, I want to replace the
statusid instance variable in Message with the enum Status and have a more
complex query that returns the Message along with both values from the
STATUS lookup table in the form of my enum. 

How would this work in the SQLMap? Does anybody have an example of this?
Thanks in advance!
&lt;/pre&gt;</description>
    <dc:creator>shoenigman</dc:creator>
    <dc:date>2010-06-15T14:43:12</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19216">
    <title>Getting RunTime Exception</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19216</link>
    <description>&lt;pre&gt;
Hi,
I am trying to create a POC for iBatis. I have trying to do some
configuration and getting the following error

14-Jun-2010 20:02:20 com.ibatis.common.logging.jdk14.Jdk14LoggingImpl error
SEVERE: SimpleDataSource: Error while loading properties. Cause:
java.lang.RuntimeException: SimpleDataSource: Some properties were not set

Here is the stack trace:

java.lang.RuntimeException: SimpleDataSource: Some properties were not set.
at
com.ibatis.common.jdbc.SimpleDataSource.initialize(SimpleDataSource.java:131)
at
com.ibatis.common.jdbc.SimpleDataSource.&amp;lt;init&amp;gt;(SimpleDataSource.java:116)
at
com.ibatis.sqlmap.engine.datasource.SimpleDataSourceFactory.initialize(SimpleDataSourceFactory.java:31)
at
com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser$9.process(SqlMapConfigParser.java:220)
at
com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:121)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:105)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:102)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:102)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:72)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:51)
at
com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:46)
at
com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:63)
at com.ociweb.music.LoadDB.main(LoadDB.java:19)
Exception in thread "main" 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: Error initializing DataSource. 
Could not instantiate DataSourceFactory.  Cause: java.lang.RuntimeException:
SimpleDataSource: Error while loading properties. Cause:
java.lang.RuntimeException: SimpleDataSource: Some properties were not set.
at
com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:49)
at
com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:63)
at com.ociweb.music.LoadDB.main(LoadDB.java:19)
Caused by: 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: Error initializing DataSource. 
Could not instantiate DataSourceFactory.  Cause: java.lang.RuntimeException:
SimpleDataSource: Error while loading properties. Cause:
java.lang.RuntimeException: SimpleDataSource: Some properties were not set.
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:53)
at
com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:46)
... 2 more
Caused by: java.lang.RuntimeException: Error parsing XPath
'/sqlMapConfig/transactionManager/dataSource/end()'.  Cause:
com.ibatis.sqlmap.client.SqlMapException: Error initializing DataSource. 
Could not instantiate DataSourceFactory.  Cause: java.lang.RuntimeException:
SimpleDataSource: Error while loading properties. Cause:
java.lang.RuntimeException: SimpleDataSource: Some properties were not set.
at
com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:123)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:105)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:102)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:102)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:72)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:51)
... 3 more
Caused by: com.ibatis.sqlmap.client.SqlMapException: Error initializing
DataSource.  Could not instantiate DataSourceFactory.  Cause:
java.lang.RuntimeException: SimpleDataSource: Error while loading
properties. Cause: java.lang.RuntimeException: SimpleDataSource: Some
properties were not set.
at
com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser$9.process(SqlMapConfigParser.java:227)
at
com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:121)
... 8 more
Caused by: java.lang.RuntimeException: SimpleDataSource: Error while loading
properties. Cause: java.lang.RuntimeException: SimpleDataSource: Some
properties were not set.
at
com.ibatis.common.jdbc.SimpleDataSource.initialize(SimpleDataSource.java:210)
at
com.ibatis.common.jdbc.SimpleDataSource.&amp;lt;init&amp;gt;(SimpleDataSource.java:116)
at
com.ibatis.sqlmap.engine.datasource.SimpleDataSourceFactory.initialize(SimpleDataSourceFactory.java:31)
at
com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser$9.process(SqlMapConfigParser.java:220)
... 9 more
Caused by: java.lang.RuntimeException: SimpleDataSource: Some properties
were not set.
at
com.ibatis.common.jdbc.SimpleDataSource.initialize(SimpleDataSource.java:131)

Any help/suggestion form the fellow members would be highly helpful.

Thanks
&lt;/pre&gt;</description>
    <dc:creator>Absaar</dc:creator>
    <dc:date>2010-06-14T15:15:58</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19213">
    <title>SQLExecutor.addBatch() modified</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19213</link>
    <description>&lt;pre&gt;By default for batch inserts ibatis caches the prepared statements in
list and always re-uses the last statement for table inserts.  This
model works for batch inserts for a single table.  However, we have a
requirement where we need to do batch inserts into several tables in a
single transaction.  Since ibatis is designed for batch inserts to a
single table, using multi table insert gives us pathetic performance, as
ibatis creates a new PreparedStatement for every query (occuping
database cursor as well).

I looked at the source code and modified SqlExecutor==&amp;gt;addBatch()
method.  This method uses a Map instead of a list.  Corresponding
changes are done to populate the map and retrieve from map.  Following
is the code.

    private Map&amp;lt;String,PreparedStatement&amp;gt; statementMap = new
HashMap&amp;lt;String,PreparedStatement&amp;gt;();

    public void addBatch(StatementScope statementScope, Connection conn,
String sql, Object[] parameters) throws SQLException {
      PreparedStatement ps = null;
      //if (currentSql != null &amp;amp;&amp;amp; currentSql.equals(sql)) {
      if (currentSql != null &amp;amp;&amp;amp; statementMap.containsKey(currentSql)) {
        //int last = statementList.size() - 1;
        ps = (PreparedStatement) statementMap.get(currentSql);
      } else {
        ps = prepareStatement(statementScope.getSession(), conn, sql);
        setStatementTimeout(statementScope.getStatement(), ps);
        currentSql = sql;
        statementList.add(ps);
        statementMap.put(currentSql,ps);
        batchResultList.add(new
BatchResult(statementScope.getStatement().getId(), sql));
      }
      statementScope.getParameterMap().setParameters(statementScope, ps,
parameters);
      ps.addBatch();
      size++;
    }

    public int executeBatch() throws SQLException {
      int totalRowCount = 0;
      Collection&amp;lt;PreparedStatement&amp;gt; psColl = statementMap.values();
      //for (int i = 0, n = statementList.size(); i &amp;lt; n; i++) {
      Iterator&amp;lt;PreparedStatement&amp;gt; it = psColl.iterator();
      //for (int i = 0, n = psColl.size(); i &amp;lt; n; i++) {
      while(it.hasNext()){
        //PreparedStatement ps = (PreparedStatement)
statementList.get(i);
       PreparedStatement ps = it.next();
        int[] rowCounts = ps.executeBatch();
        for (int j = 0; j &amp;lt; rowCounts.length; j++) {
          if (rowCounts[j] == Statement.SUCCESS_NO_INFO) {
            // do nothing
          } else if (rowCounts[j] == Statement.EXECUTE_FAILED) {
            throw new SQLException("The batched statement at index " + j
+ " failed to execute.");
          } else {
            totalRowCount += rowCounts[j];
          }
        }
      }
      return totalRowCount;
    }


Que: After making these changes everything works for us and the
performance is very good as it starts using cached PreparedStatements.
Does it look like a proper implementation?  Will it have any other
impact that I may not have seen yet?

&lt;/pre&gt;</description>
    <dc:creator>Nitin.Dubey&lt; at &gt;sungard.com</dc:creator>
    <dc:date>2010-06-14T05:10:18</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19209">
    <title>Select from View (as opposed to table) using iBatis</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19209</link>
    <description>&lt;pre&gt;
I am using iBatis (2.5) with DB2 version 8.x and Spring 2.5. Is there any
issue in querying a view (as opposed to table)? It is a very simple select
as:

&amp;lt;resultMap id="codeMap" class="org.impl.CodeBean"&amp;gt;
        &amp;lt;result column="TBL_NM"      property="tableName"  
typeHandler="org.our.StringTrimTypeHandler"/&amp;gt;
        &amp;lt;result column="COL_NM"     property="columnName"
typeHandler="org.our.StringTrimTypeHandler"/&amp;gt;
        &amp;lt;result column="CD"            property="code"       
typeHandler="org.our.StringTrimTypeHandler"/&amp;gt;  
        &amp;lt;result column="CD_DESC"   property="shortDesc" 
typeHandler="org.our.StringTrimTypeHandler"/&amp;gt;  
        &amp;lt;result column="CD_LNG_DESC" property="longDesc"  
typeHandler="org.our.StringTrimTypeHandler"/&amp;gt;
&amp;lt;/resultMap&amp;gt;

&amp;lt;select id="findAll" resultMap="codeMap"&amp;gt;
        select CD from ${jdbc.schema}.V_MY_VIEW
&amp;lt;/select&amp;gt;


org.impl.CodeBean is a simple POJO with String attributes only with public
getter and setter. StringTrimTypeHandler are custom code written.

My SQL are working when I am using table, as opposed to View.

When I call the above findAll from JUnit for View, I get exception as:


&lt;/pre&gt;</description>
    <dc:creator>mule_user</dc:creator>
    <dc:date>2010-06-09T21:11:49</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19206">
    <title>iBATIS 3 dynamic sql 'foreach' list got problem.</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19206</link>
    <description>&lt;pre&gt;
I am used ibatis 3.0 GA;

those are my JavaBean classes,

public class SearchObject {
 private Long id;
 private List&amp;lt;Long&amp;gt; childIdList = new ArrayList&amp;lt;Long&amp;gt;();
 public Long getId() {
        return id;
 }
 public void setId(Long id) {
        this.id = id;
 }
 public List&amp;lt;Long&amp;gt; getChildIdList () {
       return childIdList;
 }
 public void setChildIdList (List&amp;lt;Long&amp;gt; childIdList ) {
        this.childIdList = childIdList ;
 }
}

public class ResultObject {
 private String result;
 public String getresult() {
        return result;
 }
 public void setResult(String result) {
        this.result = result;
 }
}

and this is my sqlmapping file,

&amp;lt;select id="getView" parameterType="SearchObject "
resultType="ResultObject"&amp;gt;
    select o.result from table o      
     &amp;lt;where&amp;gt;
     &amp;lt;if test="id != null "&amp;gt;
o.id = #{id}
     &amp;lt;/if&amp;gt;
     &amp;lt;if test="childIdList.size() &amp;gt; 0"&amp;gt;
        and o.child in
        &amp;lt;foreach item="item" index="index" open="(" close=")" separator=","
collection="childIdList" &amp;gt;
             #{item}
        &amp;lt;/foreach&amp;gt;
     &amp;lt;/if&amp;gt;
    &amp;lt;/where&amp;gt;
&amp;lt;/select&amp;gt;

when I execute I got error:

### Error querying database.  Cause:
org.apache.ibatis.reflection.ReflectionException: There is no getter for
property named '__frch_item_0' in 'SearchObject'
### The error may involve sqlmap.Search.getView-Inline
### The error occurred while setting parameters
### Cause: org.apache.ibatis.reflection.ReflectionException: There is no
getter for property named '__frch_item_0' in 'SearchObject'
ERROR [STDERR] org.apache.ibatis.exceptions.PersistenceException:
### Error querying database.  Cause:
org.apache.ibatis.reflection.ReflectionException: There is no getter for
property named '__frch_item_0' in 'SearchObject'
### The error may involve sqlmap.CCSalesOrderItem.getCCSOItemView-Inline
### The error occurred while setting parameters
### Cause: org.apache.ibatis.reflection.ReflectionException: There is no
getter for property named '__frch_item_0' in 'SearchObject'

If I change the sql mapping to this, 

&amp;lt;select id="getView" parameterType="SearchObject "
resultType="ResultObject"&amp;gt;
    select o.result from table o      
     &amp;lt;where&amp;gt;
     &amp;lt;if test="id != null "&amp;gt;
o.id = #{id}
     &amp;lt;/if&amp;gt;
     &amp;lt;if test="childIdList.size() &amp;gt; 0"&amp;gt;
        and o.child in
        &amp;lt;foreach item="item" index="index" open="(" close=")" separator=","
collection="childIdList" &amp;gt;
             #childIdList[${index}]
        &amp;lt;/foreach&amp;gt;
     &amp;lt;/if&amp;gt;
    &amp;lt;/where&amp;gt;
&amp;lt;/select&amp;gt;

I got this error:

### Error querying database.  Cause:
org.apache.ibatis.executor.ExecutorException: There was no TypeHandler found
for parameter childIdList[0] of statement sqlmap.Search.getView
### The error may involve sqlmap.Search.getView-Inline
### The error occurred while setting parameters
### Cause: org.apache.ibatis.executor.ExecutorException: There was no
TypeHandler found for parameter childIdList[0] of statement
sqlmap.Search.getView

where cause the error?
&lt;/pre&gt;</description>
    <dc:creator>bruce666</dc:creator>
    <dc:date>2010-06-08T08:09:27</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19202">
    <title>Cause: java.sql.SQLException: Closed Connection</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19202</link>
    <description>&lt;pre&gt;
I am getting java.sql.SQLException error and don't know where to turn.

Below is the stacktrace:-
Caused by: java.sql.SQLException: Closed Connection
at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryWithCallback(GeneralStatement.java:185)
at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryForList(GeneralStatement.java:123)
at
com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:614)
at
com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:588)
at
com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSessionImpl.java:118)
at
org.springframework.orm.ibatis.SqlMapClientTemplate$3.doInSqlMapClient(SqlMapClientTemplate.java:268)
at
org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemplate.java:193)
at
org.springframework.orm.ibatis.SqlMapClientTemplate.executeWithListResult(SqlMapClientTemplate.java:219)
at
org.springframework.orm.ibatis.SqlMapClientTemplate.queryForList(SqlMapClientTemplate.java:266)

After researching and asking around a lot...I got feedback that I am getting
the error because even after the connection has been closed i am calling the
resultset.  However, I am using iBatis + Spring across whole application and
dont deal with ResultSet.  

My Sample code is below:

this.setSqlMapClientTemplate(getSqlTempl()); 
getSqlMapClientTemplate().queryForList("authentication.isUserDAO", parmMap); 
this.setSqlMapClientTemplate(getSqlTemplDW()); 
List results = (List) parmMap.get("Result0"); 

I simply call the SP with parameters and get a resultSet back.  I saw a
ticket opened in JIRA for iBatis that had similar error, however, I am not
using proxyConnection.  https://issues.apache.org/jira/browse/IBATIS-539

Has anyone seen this type of message before ? any ideas/pointers?

&lt;/pre&gt;</description>
    <dc:creator>omnipresent</dc:creator>
    <dc:date>2010-06-06T22:21:04</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19199">
    <title>committing stored procedure</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19199</link>
    <description>&lt;pre&gt;
Hi there,

How to make a commit when calling a stored procedure which make an insert :
This commit doesn't work :

public void insererCiv1() {
try {

Adresse autreAdresse = new Adresse();
autreAdresse.setCodEtudiant("09F643X");
autreAdresse.setCodTypAdresse("1");
autreAdresse.setTel("0240281365");
autreAdresse.setComplement("c2");
autreAdresse.setNum("1");
autreAdresse.setVoie("2");
autreAdresse.setLocalite("paris");
autreAdresse.setCp("75000");
autreAdresse.setVille("paris");
autreAdresse.setPays("100");

  this.getSqlMapClient().startTransaction();
  this.getSqlMapClient().queryForObject("pAdresse", autreAdresse); // call
stored procedure which make an insert
  this.getSqlMapClient().commitTransaction();

   } catch (SQLException e) {
        System.out.println(e);
   } finally{
           try {
               this.getSqlMapClient().endTransaction();
            } catch (SQLException e) {
            }
        }
}

sqlMap.xml (stored procedure making an insert)
...
&amp;lt;procedure id="pAdresse" parameterMap="adresseParamMap"&amp;gt;
    { call pbw_adresse.MajAdresse(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) }
&amp;lt;/procedure&amp;gt;

SpringConfiguration.xml :
...
&amp;lt;bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close"&amp;gt;
&amp;lt;property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"
/&amp;gt;
&amp;lt;property name="url" value="jdbc:oracle:thin:&amp;lt; at &amp;gt;oolong:1521:geotest" /&amp;gt;
&amp;lt;property name="username" value="***" /&amp;gt;
&amp;lt;property name="password" value="***" /&amp;gt;
&amp;lt;property name="validationQuery" value="SELECT 1 FROM DUAL" /&amp;gt;
&amp;lt;property name="testOnBorrow" value="true" /&amp;gt;
&amp;lt;property name="defaultAutoCommit" value="false" /&amp;gt;
&amp;lt;/bean&amp;gt;

&amp;lt;bean id="sqlMapClientTemplate"
class="org.springframework.orm.ibatis.SqlMapClientTemplate"&amp;gt;
&amp;lt;property name="sqlMapClient"&amp;gt;
&amp;lt;bean class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"&amp;gt;
&amp;lt;property name="configLocation"&amp;gt;
&amp;lt;value&amp;gt;classpath:fr/univNantes/sig/swelPrimo/ibatis/SqlMapConfig.xml
&amp;lt;/value&amp;gt;
&amp;lt;/property&amp;gt;
&amp;lt;property name="dataSource"&amp;gt;
&amp;lt;ref bean="dataSource" /&amp;gt;
&amp;lt;/property&amp;gt;
&amp;lt;property name="transactionConfigClass"&amp;gt;

&amp;lt;value&amp;gt;com.ibatis.sqlmap.engine.transaction.jdbc.JdbcTransactionConfig&amp;lt;/value&amp;gt;
&amp;lt;/property&amp;gt;
&amp;lt;/bean&amp;gt;
&amp;lt;/property&amp;gt;
&amp;lt;/bean&amp;gt;

Thanks

François
&lt;/pre&gt;</description>
    <dc:creator>Mr.Squirrel</dc:creator>
    <dc:date>2010-06-04T09:23:15</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19196">
    <title>Possible to get ibatis to throw an exception if not all params are filled in?</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19196</link>
    <description>&lt;pre&gt;
Hi,

We're using iBatis 2.3 with Tomcat 6.0.26 (Java 1.6).  We have many queries
where we pass in parameters (e.g. "#company_id#"), similar to 

        &amp;lt;select id="getNightlifeDetailsForHotels"
resultMap="SearchResultSQLMaps.searchResultNightlifeMap"
parameterClass="java.util.Map"&amp;gt;
                SELECT vw_attractions_and_activities.* FROM
vw_attractions_and_activities WHERE (propertyid = #company_id#) and
(subcategoryid = 7) ORDER BY name
        &amp;lt;/select&amp;gt;

I was wondering if there is a way to get ibatis to throw an exception if not
all the parameters are filled in.  Right now, it just substitutes a "null"
for parameters that are not included.

Here is an example Java method we use to invoke a query ...

public static Object queryForObject(String newStmtId, Object inputParams)
throws SQLException {
if (inputParams.getClass() == HashMap.class || inputParams.getClass() ==
Hashtable.class)
inputParams = preProcessParameters((Map) inputParams);
return getSqlMapHandle().queryForObject(newStmtId, inputParams);
}

Thanks, - Dave
&lt;/pre&gt;</description>
    <dc:creator>laredotornado</dc:creator>
    <dc:date>2010-06-03T21:23:08</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19194">
    <title>JPetstore5.0+mysql error:XXXX in field list is ambiguous</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19194</link>
    <description>&lt;pre&gt;
Hi, I'm a new learner of ibatis, I download the JPetstore5.0 example, when db
is hsqldb, everything is ok,but if mysql, I encounter the similar error when
add an item into shopcart, the error is below:

Stack
    org.apache.struts.beanaction.BeanActionException: Error dispatching bean
action via URL pattern ('addItemToCart').  Cause:
org.apache.struts.beanaction.BeanActionException: Error invoking Action. 
Cause: java.lang.reflect.InvocationTargetException
at org.apache.struts.beanaction.BeanAction.execute(BeanAction.java:249)
at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.struts.beanaction.BeanActionException: Error invoking
Action.  Cause: java.lang.reflect.InvocationTargetException
at org.apache.struts.beanaction.ActionInvoker.invoke(ActionInvoker.java:18)
at
org.apache.struts.beanaction.DefaultActionInterceptor.intercept(DefaultActionInterceptor.java:5)
at org.apache.struts.beanaction.BeanAction.execute(BeanAction.java:246)
... 21 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.struts.beanaction.ActionInvoker.invoke(ActionInvoker.java:16)
... 23 more
Caused by: com.ibatis.dao.client.DaoException: Failed to execute
queryForObject - id [getItem], parameterObject [EST-4].  Cause:
com.ibatis.common.jdbc.exception.NestedSQLException:   
--- The error occurred in
com/ibatis/jpetstore/persistence/sqlmapdao/sql/Item.xml.  
--- The error occurred while applying a parameter map.  
--- Check the getItem-InlineParameterMap.  
--- Check the statement (query failed).  
--- Cause:
com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Column
'ITEMID' in field list is ambiguous
Caused by:
com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Column
'ITEMID' in field list is ambiguous
Caused by: com.ibatis.common.jdbc.exception.NestedSQLException:   
--- The error occurred in
com/ibatis/jpetstore/persistence/sqlmapdao/sql/Item.xml.  
--- The error occurred while applying a parameter map.  
--- Check the getItem-InlineParameterMap.  
--- Check the statement (query failed).  
--- Cause:
com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Column
'ITEMID' in field list is ambiguous
Caused by:
com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Column
'ITEMID' in field list is ambiguous
at
com.ibatis.dao.client.template.SqlMapDaoTemplate.queryForObject(SqlMapDaoTemplate.java:164)
at
com.ibatis.jpetstore.persistence.sqlmapdao.ItemSqlMapDao.getItem(ItemSqlMapDao.java:42)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.ibatis.dao.engine.impl.DaoProxy.invoke(DaoProxy.java:72)
at $Proxy7.getItem(Unknown Source)
at
com.ibatis.jpetstore.service.CatalogService.getItem(CatalogService.java:59)
at
com.ibatis.jpetstore.presentation.CartBean.addItemToCart(CartBean.java:60)
... 28 more
Caused by: com.ibatis.common.jdbc.exception.NestedSQLException:   
--- The error occurred in
com/ibatis/jpetstore/persistence/sqlmapdao/sql/Item.xml.  
--- The error occurred while applying a parameter map.  
--- Check the getItem-InlineParameterMap.  
--- Check the statement (query failed).  
--- Cause:
com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Column
'ITEMID' in field list is ambiguous
Caused by:
com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Column
'ITEMID' in field list is ambiguous
at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryWithCallback(GeneralStatement.java:185)
at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryForObject(GeneralStatement.java:104)
at
com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapExecutorDelegate.java:561)
at
com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapExecutorDelegate.java:536)
at
com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForObject(SqlMapSessionImpl.java:93)
at
com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForObject(SqlMapClientImpl.java:70)
at
com.ibatis.dao.client.template.SqlMapDaoTemplate.queryForObject(SqlMapDaoTemplate.java:162)
... 37 more
Caused by:
com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Column
'ITEMID' in field list is ambiguous
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:931)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2985)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1631)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1723)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3256)
at
com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1313)
at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:874)
at
com.ibatis.sqlmap.engine.execution.SqlExecutor.executeQuery(SqlExecutor.java:180)
at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.sqlExecuteQuery(GeneralStatement.java:205)
at
com.ibatis.sqlmap.engine.mapping.statement.GeneralStatement.executeQueryWithCallback(GeneralStatement.java:173)
... 43 more
&lt;/pre&gt;</description>
    <dc:creator>fxbird</dc:creator>
    <dc:date>2010-06-03T13:53:33</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19192">
    <title>Mapping an Array of String</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19192</link>
    <description>&lt;pre&gt;
hello,

i am calling an oracle stored procedure which return the type "TABLE OF
VARCHAR2" (as output parameter)
How can i map this type to the java type "String []"  ?

SqlMap.xml :
&amp;lt;parameterMap id="calculDroits" class="CalculDroits"&amp;gt;
    &amp;lt;parameter property="seqFormation" jdbcType="ARRAY"
javaType="java.lang.String[]" mode="OUT" /&amp;gt;
&amp;lt;/parameterMap&amp;gt;    

&amp;lt;procedure id="pCalculDroits" parameterMap="calculDroits"&amp;gt;
    { call pbw_calculDroitsReins.Du(?) }
&amp;lt;/procedure&amp;gt;


JavaBean CalculDroits.java :
public class CalculDroits implements Serializable{

private static final long serialVersionUID = 9014779368033647012L;

private String[] codesDroit;

public String[] getCodesDroit() {
return codesDroit;
}
public void setCodesDroit(String[] codesDroit) {
this.codesDroit = codesDroit;
}
}

Thank you
&lt;/pre&gt;</description>
    <dc:creator>Mr.Squirrel</dc:creator>
    <dc:date>2010-06-01T14:14:38</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19189">
    <title>iBatis 3: dynamic sql and numeric property type problem</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19189</link>
    <description>&lt;pre&gt;Hi,

how can I deal with numeric class properties for dynamic sql in iBatis 
3.x? In the older 2.x release there exist a `&amp;lt;isGreaterThan&amp;gt;' tag and 
the user guide for 3.x only mentioned the &amp;lt;if&amp;gt; condition. For that, I 
get a NumberFormatException:

Caused by: java.lang.NumberFormatException: For input string: "{0=null}"


The example looks like:

&amp;lt;select id="getSomeList" resultType="SomeClass" 
parameterType="SomeConditionClass"&amp;gt;
  select
&amp;lt;include refid="someColumns"/&amp;gt;
from
hmm_t t, context_x x
where
t.id = x.id_hmm

&amp;lt;if test="#{id} != -1"&amp;gt;
and x.id = #{id} 
&amp;lt;/if&amp;gt;

&amp;lt;/select&amp;gt;


Thank you in advance,
Andreas
&lt;/pre&gt;</description>
    <dc:creator>Andreas Niemeyer</dc:creator>
    <dc:date>2010-05-31T14:55:35</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19185">
    <title>FileNotFoundException: http://www.mybatis.org/dtd/sql-map-config-2.dtd</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19185</link>
    <description>&lt;pre&gt;
I am using iBatis version 2 and Spring 2.5

My XML:

&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;
&amp;lt;!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
    "http://www.ibatis.com/dtd/sql-map-config-2.dtd"&amp;gt;
&amp;lt;sqlMapConfig&amp;gt;        
    &amp;lt;settings useStatementNamespaces="true" /&amp;gt;
&amp;lt;sqlMap resource="org/../mapping/my1.xml" /&amp;gt;
            &amp;lt;sqlMap resource="org/../mapping/my2.xml" /&amp;gt;
&amp;lt;/sqlMapConfig&amp;gt;

my1.xml looks like:

&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;
&amp;lt;!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd" &amp;gt;
&amp;lt;sqlMap namespace="county"&amp;gt;
....
....

When I start the server with the application deployed, I get error as:

org.springframework.beans.factory.BeanDefinitionStoreException: IOException
parsing XML document from URL
[file:/C:/workspace/.../bin/sqlmap-config-myApp.xml]; nested exception is
java.io.FileNotFoundException:
http://www.mybatis.org/dtd/sql-map-config-2.dtd
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:416)

Caused by: java.io.FileNotFoundException:
http://www.mybatis.org/dtd/sql-map-config-2.dtd

What should I be using for:
http://ibatis.apache.org/dtd/sql-map-config-2.dtd?

The link, http://ibatis.apache.org/dtd/sql-map-config-2.dtd is also broken.

Changing http://ibatis.apache.org/dtd/sql-map-config-2.dtd to
http://ibatis.apache.org/dtd/sql-map-config-2.dtd, as I have it in my1.xml,
I get exception as incorrect XML format.

My question:
What do I need to use in place of:
http://ibatis.apache.org/dtd/sql-map-config-2.dtd?







&lt;/pre&gt;</description>
    <dc:creator>mule_user</dc:creator>
    <dc:date>2010-05-27T16:20:12</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19176">
    <title>Procedure returining Array</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19176</link>
    <description>&lt;pre&gt;Hi,

 

I have looked at some of the examples.

All of them show that we need to get a brand new connection to execute a
procedure with Array as out parameters.

Why do we need a new connection, why can't we just use the one from
pool?

 

Thanks

Vinaya



This electronic message is intended only for the use of the individual(s) or entity(ies) named above and may contain information which is privileged and/or confidential.  If you are not the intended recipient, be aware that any disclosure, copying, distribution, dissemination or use of the contents of this message is prohibited.  If you received this message in error, please notify the sender immediately.
&lt;/pre&gt;</description>
    <dc:creator>Vinaya Tirikkovalluru</dc:creator>
    <dc:date>2010-05-25T13:21:04</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19168">
    <title>Still see SQL in log for cached statements</title>
    <link>http://comments.gmane.org/gmane.comp.java.ibatisdb.user/19168</link>
    <description>&lt;pre&gt;I am still seeing SQL  for statements that should be cached when I turn 
logging on. Is that normal? And if so how do I know the cache is working?

My cache configuration:

    &amp;lt;cacheModel id="storeCache" type ="LRU" readOnly="false" 
serialize="false"&amp;gt;
        &amp;lt;flushInterval minutes="30"/&amp;gt;
        &amp;lt;property name="cache-size" value="10" /&amp;gt;
    &amp;lt;/cacheModel&amp;gt;

&lt;/pre&gt;</description>
    <dc:creator>Warren Bell</dc:creator>
    <dc:date>2010-05-24T19:11:48</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.comp.java.ibatisdb.user">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.java.ibatisdb.user</link>
  </textinput>
</rdf:RDF>
