Author: cbegin
Date: Wed Jun 10 03:11:54 2009
New Revision: 783193

URL: http://svn.apache.org/viewvc?rev=783193&view=rev
Log:
fixed bug in selectKey ids

Added:
    
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/
    
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/MapperConfig.xml
    
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/SelectKeyTest.java
    
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table1.xml
    
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table2.xml
Modified:
    
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/xml/XMLStatementBuilder.java

Modified: 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/xml/XMLStatementBuilder.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/xml/XMLStatementBuilder.java?rev=783193&r1=783192&r2=783193&view=diff
==============================================================================
--- 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/xml/XMLStatementBuilder.java
 (original)
+++ 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/xml/XMLStatementBuilder.java
 Wed Jun 10 03:11:54 2009
@@ -133,8 +133,9 @@
           fetchSize, timeout, parameterMap, parameterTypeClass, resultMap, 
resultTypeClass,
           resultSetTypeEnum, flushCache, useCache, keyGenerator,keyProperty);
 
-      MappedStatement keyStatement = 
configuration.getMappedStatement(builderAssistant.applyCurrentNamespace(id));
+      id = builderAssistant.applyCurrentNamespace(id);
 
+      MappedStatement keyStatement = configuration.getMappedStatement(id);
       configuration.addKeyGenerator(id, new 
SelectKeyGenerator(keyStatement,executeBefore));
     }
   }

Added: 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/MapperConfig.xml
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/MapperConfig.xml?rev=783193&view=auto
==============================================================================
--- 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/MapperConfig.xml
 (added)
+++ 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/MapperConfig.xml
 Wed Jun 10 03:11:54 2009
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<!DOCTYPE configuration
+    PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN"
+    "http://ibatis.apache.org/dtd/ibatis-3-config.dtd";>
+<configuration>
+
+  <mappers>
+    <mapper resource="org/apache/ibatis/submitted/selectkey/Table1.xml" />
+    <mapper resource="org/apache/ibatis/submitted/selectkey/Table2.xml" />
+  </mappers>
+
+</configuration>

Added: 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/SelectKeyTest.java
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/SelectKeyTest.java?rev=783193&view=auto
==============================================================================
--- 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/SelectKeyTest.java
 (added)
+++ 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/SelectKeyTest.java
 Wed Jun 10 03:11:54 2009
@@ -0,0 +1,22 @@
+package org.apache.ibatis.submitted.selectkey;
+
+import java.io.Reader;
+
+import junit.framework.TestCase;
+
+import org.apache.ibatis.io.Resources;
+import org.apache.ibatis.session.SqlSessionFactory;
+import org.apache.ibatis.session.SqlSessionFactoryBuilder;
+
+public class SelectKeyTest extends TestCase {
+
+    public void testSelectKey() throws Exception {
+        // this test checks to make sure that we can have select keys with the 
same
+        // insert id in different namespaces
+        String resource = 
"org/apache/ibatis/submitted/selectkey/MapperConfig.xml";
+        Reader reader = Resources.getResourceAsReader(resource);
+        SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
+        SqlSessionFactory sqlMapper = builder.build(reader);
+        assertNotNull(sqlMapper);
+    }
+}

Added: 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table1.xml
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table1.xml?rev=783193&view=auto
==============================================================================
--- 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table1.xml
 (added)
+++ 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table1.xml
 Wed Jun 10 03:11:54 2009
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN" 
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd";>
+<mapper namespace="org.apache.ibatis.submitted.selectkey.Table1">
+  <insert id="insert" parameterType="map" >
+    insert into table1 (name) values (#{name})
+    <selectKey resultType="java.lang.Integer" keyProperty="id" >
+      CALL IDENTITY()
+    </selectKey>
+  </insert>
+</mapper>
\ No newline at end of file

Added: 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table2.xml
URL: 
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table2.xml?rev=783193&view=auto
==============================================================================
--- 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table2.xml
 (added)
+++ 
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/submitted/selectkey/Table2.xml
 Wed Jun 10 03:11:54 2009
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN" 
"http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd";>
+<mapper namespace="org.apache.ibatis.submitted.selectkey.Table2">
+  <insert id="insert" parameterType="map" >
+    insert into table2 (name) values (#{name})
+    <selectKey resultType="java.lang.Integer" keyProperty="id" >
+      CALL IDENTITY()
+    </selectKey>
+  </insert>
+</mapper>


Reply via email to