Author: cbegin
Date: Sat Nov 1 22:40:57 2008
New Revision: 709845
URL: http://svn.apache.org/viewvc?rev=709845&view=rev
Log:
Enabled validations, refactored entity resolver, and corrected dtds.
Added:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-config-3.dtd
- copied, changed from r709767,
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/monarch-configuration.dtd
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-mapper-3.dtd
- copied, changed from r709767,
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/monarch-mapper.dtd
Removed:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/monarch-configuration.dtd
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperEntityResolver.java
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/BlogMapper.xml
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/MapperConfig.xml
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java?rev=709845&r1=709844&r2=709845&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperConfigParser.java
Sat Nov 1 22:40:57 2008
@@ -15,7 +15,6 @@
public class MapperConfigParser extends BaseParser {
-
protected Reader reader;
protected NodeletParser parser;
@@ -32,6 +31,7 @@
this.parser = new NodeletParser();
this.parser.addNodeletHandler(this);
+ this.parser.setValidation(true);
this.parser.setVariables(props);
this.parser.setEntityResolver(new MapperEntityResolver());
}
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperEntityResolver.java
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperEntityResolver.java?rev=709845&r1=709844&r2=709845&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperEntityResolver.java
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperEntityResolver.java
Sat Nov 1 22:40:57 2008
@@ -11,16 +11,16 @@
*/
public class MapperEntityResolver implements EntityResolver {
- private static final String MAPPER_CONFIG_DTD_RESOURCE =
"org/apache/ibatis/monarch/builder/mapper-config.dtd";
- private static final String MAPPER_DTD_RESOURCE =
"org/apache/ibatis/monarch/builder/mapper.dtd";
+ private static final String MAPPER_CONFIG_DTD_RESOURCE =
"org/apache/ibatis/builder/ibatis-config-3.dtd";
+ private static final String MAPPER_DTD_RESOURCE =
"org/apache/ibatis/builder/ibatis-mapper-3.dtd";
private static final Map<String, String> doctypeMap = new HashMap<String,
String>();
static {
-
doctypeMap.put("http://ibatis.apache.org/dtd/mapper-config-3.dtd".toUpperCase(),
MAPPER_CONFIG_DTD_RESOURCE);
- doctypeMap.put("-//ibatis.apache.org//DTD Mapper Config
2.0//EN".toUpperCase(), MAPPER_CONFIG_DTD_RESOURCE);
+
doctypeMap.put("http://ibatis.apache.org/dtd/ibatis-config-3.dtd".toUpperCase(),
MAPPER_CONFIG_DTD_RESOURCE);
+ doctypeMap.put("-//ibatis.apache.org//DTD Config 3.0//EN".toUpperCase(),
MAPPER_CONFIG_DTD_RESOURCE);
- doctypeMap.put("http://ibatis.apache.org/dtd/mapper-3.dtd".toUpperCase(),
MAPPER_DTD_RESOURCE);
+
doctypeMap.put("http://ibatis.apache.org/dtd/ibatis-mapper-3.dtd".toUpperCase(),
MAPPER_DTD_RESOURCE);
doctypeMap.put("-//ibatis.apache.org//DTD Mapper 3.0//EN".toUpperCase(),
MAPPER_DTD_RESOURCE);
}
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java?rev=709845&r1=709844&r2=709845&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/MapperParser.java
Sat Nov 1 22:40:57 2008
@@ -35,6 +35,7 @@
this.parser = new NodeletParser();
this.parser.addNodeletHandler(this);
+ this.parser.setValidation(true);
this.parser.setVariables(configuration.getVariables());
this.parser.setEntityResolver(new MapperEntityResolver());
}
Copied:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-config-3.dtd
(from r709767,
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/monarch-configuration.dtd)
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-config-3.dtd?p2=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-config-3.dtd&p1=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/monarch-configuration.dtd&r1=709767&r2=709845&rev=709845&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/monarch-configuration.dtd
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-config-3.dtd
Sat Nov 1 22:40:57 2008
@@ -36,7 +36,7 @@
<!ATTLIST typeHandler
javaType CDATA #REQUIRED
jdbcType CDATA #IMPLIED
-callback CDATA #REQUIRED
+handler CDATA #REQUIRED
>
<!ELEMENT objectFactory (property*)>
Copied:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-mapper-3.dtd
(from r709767,
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/monarch-mapper.dtd)
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-mapper-3.dtd?p2=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-mapper-3.dtd&p1=ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/monarch-mapper.dtd&r1=709767&r2=709845&rev=709845&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/monarch-mapper.dtd
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/builder/ibatis-mapper-3.dtd
Sat Nov 1 22:40:57 2008
@@ -37,7 +37,7 @@
typeHandler CDATA #IMPLIED
>
-<!ELEMENT resultMap (constructor,id*,result*,collection* discriminator?)>
+<!ELEMENT resultMap (constructor?,id*,result*,collection*, discriminator?)>
<!ATTLIST resultMap
id CDATA #REQUIRED
type CDATA #REQUIRED
@@ -45,15 +45,10 @@
>
<!ELEMENT constructor (id*,result*)>
-<!ATTLIST resultMap
-id CDATA #REQUIRED
-type CDATA #REQUIRED
-extends CDATA #IMPLIED
->
<!ELEMENT id EMPTY>
-<!ATTLIST result
-property CDATA #REQUIRED
+<!ATTLIST id
+property CDATA #IMPLIED
javaType CDATA #IMPLIED
column CDATA #IMPLIED
jdbcType CDATA #IMPLIED
@@ -62,7 +57,7 @@
<!ELEMENT result EMPTY>
<!ATTLIST result
-property CDATA #REQUIRED
+property CDATA #IMPLIED
javaType CDATA #IMPLIED
column CDATA #IMPLIED
jdbcType CDATA #IMPLIED
@@ -70,7 +65,7 @@
>
<!ELEMENT collection EMPTY>
-<!ATTLIST result
+<!ATTLIST collection
property CDATA #REQUIRED
column CDATA #IMPLIED
javaType CDATA #IMPLIED
@@ -111,7 +106,7 @@
refid CDATA #REQUIRED
>
-<!ELEMENT sql (#PCDATA | include | include)*>
+<!ELEMENT sql (#PCDATA | include)*>
<!ATTLIST sql
id CDATA #REQUIRED
>
@@ -120,9 +115,9 @@
<!ATTLIST statement
id CDATA #REQUIRED
parameterMap CDATA #IMPLIED
-parameterClass CDATA #IMPLIED
+parameterType CDATA #IMPLIED
resultMap CDATA #IMPLIED
-resultClass CDATA #IMPLIED
+resultType CDATA #IMPLIED
resultSetType (FORWARD_ONLY | SCROLL_INSENSITIVE | SCROLL_SENSITIVE) #IMPLIED
fetchSize CDATA #IMPLIED
timeout CDATA #IMPLIED
@@ -130,13 +125,13 @@
useCache (true|false) #IMPLIED
>
-<!ELEMENT select (#PCDATA | include | include)*>
+<!ELEMENT select (#PCDATA | include)*>
<!ATTLIST select
id CDATA #REQUIRED
parameterMap CDATA #IMPLIED
-parameterClass CDATA #IMPLIED
+parameterType CDATA #IMPLIED
resultMap CDATA #IMPLIED
-resultClass CDATA #IMPLIED
+resultType CDATA #IMPLIED
resultSetType (FORWARD_ONLY | SCROLL_INSENSITIVE | SCROLL_SENSITIVE) #IMPLIED
fetchSize CDATA #IMPLIED
timeout CDATA #IMPLIED
@@ -148,14 +143,14 @@
<!ATTLIST insert
id CDATA #REQUIRED
parameterMap CDATA #IMPLIED
-parameterClass CDATA #IMPLIED
+parameterType CDATA #IMPLIED
timeout CDATA #IMPLIED
flushCache (true|false) #IMPLIED
>
<!ELEMENT selectKey (#PCDATA | include)*>
<!ATTLIST selectKey
-resultClass CDATA #IMPLIED
+resultType CDATA #IMPLIED
keyProperty CDATA #IMPLIED
order (before|after) #IMPLIED
>
@@ -164,7 +159,7 @@
<!ATTLIST update
id CDATA #REQUIRED
parameterMap CDATA #IMPLIED
-parameterClass CDATA #IMPLIED
+parameterType CDATA #IMPLIED
timeout CDATA #IMPLIED
flushCache (true|false) #IMPLIED
>
@@ -173,7 +168,7 @@
<!ATTLIST delete
id CDATA #REQUIRED
parameterMap CDATA #IMPLIED
-parameterClass CDATA #IMPLIED
+parameterType CDATA #IMPLIED
timeout CDATA #IMPLIED
flushCache (true|false) #IMPLIED
>
@@ -182,9 +177,9 @@
<!ATTLIST procedure
id CDATA #REQUIRED
parameterMap CDATA #IMPLIED
-parameterClass CDATA #IMPLIED
+parameterType CDATA #IMPLIED
resultMap CDATA #IMPLIED
-resultClass CDATA #IMPLIED
+resultType CDATA #IMPLIED
resultSetType (FORWARD_ONLY | SCROLL_INSENSITIVE | SCROLL_SENSITIVE) #IMPLIED
fetchSize CDATA #IMPLIED
timeout CDATA #IMPLIED
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/BlogMapper.xml
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/BlogMapper.xml?rev=709845&r1=709844&r2=709845&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/BlogMapper.xml
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/BlogMapper.xml
Sat Nov 1 22:40:57 2008
@@ -1,3 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<!DOCTYPE mapper
+ PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
+ "http://ibatis.apache.org/dtd/ibatis-mapper-3.dtd">
+
<mapper namespace="com.domain.PersonMapper">
<cache-ref namespace=""/>
@@ -7,15 +13,15 @@
</cache>
<parameterMap id="" type="">
- <param property="id" javaType="" jdbcType="" typeHandler=""
- mode="" scale="" resultMap=""/>
- <param property="dept" javaType="" jdbcType="" typeHandler=""
- mode="" scale="" resultMap=""/>
+ <parameter property="id" javaType="" jdbcType="" typeHandler=""
+ mode="IN" scale="" resultMap=""/>
+ <parameter property="dept" javaType="" jdbcType="" typeHandler=""
+ mode="IN" scale="" resultMap=""/>
</parameterMap>
<resultMap id="" type="" extends="">
<constructor>
- <id column="" javaType="" jdbcType="" typeHandler=""/>
+ <id column="" javaType="" jdbcType="" typeHandler="" />
<result column="" javaType="" jdbcType="" typeHandler=""/>
</constructor>
<result property="" column="" javaType="" jdbcType="" typeHandler=""/>
@@ -34,12 +40,6 @@
<select id="selectPersonInDept" parameterType="" resultType="" resultMap="">
select * from PERSON
where PERSON_ID = #param.id --or #{params.id}
- <!-- if(expr) foreach(x,expr) dynamic() propavail(name)
- ... common(prepend,open,conjuction,close) -->
- <if expr="param.deptId != null">
- and DEPT_ID =
-
#{param.deptId,javaType="",jdbcType="",typeHandler="",mode="",scale="",resultMap=""}
- </if>
</select>
</mapper>
\ No newline at end of file
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/MapperConfig.xml
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/MapperConfig.xml?rev=709845&r1=709844&r2=709845&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/MapperConfig.xml
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/builder/MapperConfig.xml
Sat Nov 1 22:40:57 2008
@@ -1,3 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<!DOCTYPE configuration
+ PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN"
+ "http://ibatis.apache.org/dtd/ibatis-config-3.dtd">
+
<configuration>
<properties resource="org/apache/ibatis/builder/mapper.properties"> <!--
url="" -->
@@ -5,14 +11,14 @@
</properties>
<settings>
- <property name="cacheEnabled" value="true"/>
- <property name="lazyLoadingEnabled" value="true"/>
- <property name="multipleResultSetsEnabled" value="true"/>
- <property name="useColumnLabel" value="true"/>
- <property name="enhancementEnabled" value="false"/>
- <property name="generatedKeysEnabled" value="false"/>
- <property name="defaultExecutorType" value="SIMPLE"/>
- <property name="defaultStatementTimeout" value="25000"/>
+ <setting name="cacheEnabled" value="true"/>
+ <setting name="lazyLoadingEnabled" value="true"/>
+ <setting name="multipleResultSetsEnabled" value="true"/>
+ <setting name="useColumnLabel" value="true"/>
+ <setting name="enhancementEnabled" value="false"/>
+ <setting name="generatedKeysEnabled" value="false"/>
+ <setting name="defaultExecutorType" value="SIMPLE"/>
+ <setting name="defaultStatementTimeout" value="25000"/>
</settings>
<typeAliases>
@@ -25,7 +31,7 @@
</typeAliases>
<typeHandlers>
- <typeHandler javaType="String" jdbcType="VARCHAR"
handler="org.apache.ibatis.builder.ExampleTypeHandler"/>
+ <typeHandler javaType="String" jdbcType="VARCHAR"
handler="org.apache.ibatis.builder.ExampleTypeHandler" />
</typeHandlers>
<objectFactory type="org.apache.ibatis.builder.ExampleObjectFactory">