Index: src/com/ibatis/common/resources/Resources.java =================================================================== --- src/com/ibatis/common/resources/Resources.java (revision 675228) +++ src/com/ibatis/common/resources/Resources.java (working copy) @@ -21,6 +21,8 @@ import java.net.URL; import java.net.URLConnection; import java.nio.charset.Charset; +import java.util.HashMap; +import java.util.Map; import java.util.Properties; /** @@ -36,6 +38,19 @@ */ private static Charset charset; + private static final Map primitiveClassMap = new HashMap(); + + static { + primitiveClassMap.put("primitive:byte", byte.class); + primitiveClassMap.put("primitive:byte[]", byte[].class); + primitiveClassMap.put("primitive:short", short.class); + primitiveClassMap.put("primitive:int", int.class); + primitiveClassMap.put("primitive:long", long.class); + primitiveClassMap.put("primitive:float", float.class); + primitiveClassMap.put("primitive:double", double.class); + primitiveClassMap.put("primitive:boolean", boolean.class); + } + private Resources() { } @@ -259,7 +274,10 @@ public static Class classForName(String className) throws ClassNotFoundException { Class clazz = null; try { - clazz = getClassLoader().loadClass(className); + if (primitiveClassMap.containsKey(className)) + clazz = (Class)primitiveClassMap.get(className); + else + clazz = getClassLoader().loadClass(className); } catch (Exception e) { // Ignore. Failsafe below. }