capitalized name of bean's property cased error?
------------------------------------------------
Key: IBATIS-329
URL: http://issues.apache.org/jira/browse/IBATIS-329
Project: iBatis for Java
Issue Type: Bug
Components: SQL Maps
Affects Versions: 2.1.7
Reporter: takaya yuko
Hello,
Using capitalized letter on bean's property-name leads the following
error: See next stack trace & source, is this valid?
(conditions)
public class A {
/* property's name:indexOf(1) == UpperCase */
private String eMail;
public String getEMail(){
return eMail;
}
public void setEMail(String email) {
eMail = email;
}
}
/* use bean as resultMap */
<resultMap id="result" class="A">
<result property="eMail" column="EMAIL" columnIndex="1"
javaType="java.lang.String"/>
</resultMap>
<statement id="search_A" resultMap="result">
SELECT
EMAIL
FROM
A_TABLE
</statement>
(results)
--- Cause: com.ibatis.common.beans.ProbeException:
There is no READABLE property named 'eMail' in class 'A'
(our resolution)
public class A {
private String eMail;
/* method'name:get + property's name */
geteMail(){
return EMail;
}
seteMail(String email) {
eMail = email;
}
}
iBATIS_DBL-2.1.7.597.zip (iBATIS Java 2.1.7). i suppose
that this code prevent to exchange "getter-name" to "property-name".
i took a provisional countermeasure changing "get + property-name"
(e.g: gateMail), and avoid this error now.
but i'm not sure whether this changes fits your spec or not.
could you tell me about that?
---com.ibatis.common.beans.ClassInfo----------------------------------
private static String dropCase(String name) {
if (name.startsWith("is")) {
name = name.substring(2);
} else if (name.startsWith("get") || name.startsWith("set")) {
name = name.substring(3);
} else {
throw new ProbeException("Error parsing property name '"
+ name + "'. Didn't start with 'is', 'get' or 'set'.");
}
if (name.length() == 1 || (name.length() > 1
&& !Character.isUpperCase(name.charAt(1)))) { ---------#
name = name.substring(0, 1).toLowerCase(Locale.US)
+ name.substring(1);
}
return name;
}
----------------------------------------------------------------------
thanks in advance,
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira