ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Blackburn, Gary (HHS/RHRC)" <Gary.Blackb...@hhs.gov>
Subject Problem Converting Inline Parameters to Parameter Map
Date Tue, 30 May 2006 16:05:30 GMT
Hi all. I'm having trouble converting some (working) inline parameters
to the equivalent parameter map.
 
This works just fine:
 
<select id="getemployeeMasters" resultClass="org.model.employeeMaster">
  SELECT substr(administrative_code, 1, 3) as org 
  FROM administrative_code a, employeeMaster e
  WHERE rtrim(a.administrative_code) = rtrim(e.org)
  AND a.administrative_code like #org#
  GROUP BY substr(administrative_code, 1, 3)
 </select>
 
This does not: 
 
<parameterMap id="getemployeeMastersParam"
class="org.model.employeeMaster">
  <parameter property="org" />
</parameterMap>
 
<select id="getemployeeMasters" parameterMap="getemployeeMastersParam">
  SELECT substr(administrative_code, 1, 3) as org 
  FROM administrative_code a, employeeMaster e
  WHERE rtrim(a.administrative_code) = rtrim(e.org)
  AND a.administrative_code like ?
  GROUP BY substr(administrative_code, 1, 3)
 </select>
 
I get the following error:
 
WARN - CommonsLoggingOutput.warn(44) | Erroring: id[510_1149004528570]
message[org.springframework.jdbc.UncategorizedSQLException:
(SqlMapClient operation): encountered SQLException [  
--- The error occurred in org/dao/ibatis/employeeMasterSQL.xml.  
--- The error occurred while preparing the mapped statement for
execution.  
--- Check the getemployeeMasters.  
--- Cause: java.sql.SQLException: Invalid parameter object type.
Expected 'org.model.employeeMaster' but found 'java.lang.String'.];
nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:

--- The error occurred in org/dao/ibatis/employeeMasterSQL.xml.  
--- The error occurred while preparing the mapped statement for
execution.  
--- Check the getemployeeMasters.  
--- Cause: java.sql.SQLException: Invalid parameter object type.
Expected 'org.model.employeeMaster' but found 'java.lang.String'.
 
 
>From what I can tell these two versions should be functionally
equivalent but obviously they are not. (I need to convert to a parameter
map so that I can turn on caching.)
 
Any help would be appreciated! :-)
 
--
Gary Blackburn

Mime
View raw message