Hi All ,I am using Ibatis 2.1.5 to execute a stored proc on sybase databse which retuns a string result .----------------------Entries in contiguration xml file is<parameterMap id="getContactParameters " class="map" >
<parameter property="contactId" jdbcType="INTEGER" javaType="java.lang.Integer " mode="IN"/>
<parameter property="firstName" jdbcType="VARCHAR" javaType="java.lang.String " mode="OUT"/>
</parameterMap>
<procedure id="spGetContacts" parameterMap="getContactParameters" >
{? sp_sample_get_contact (?)}
</procedure>
also tried
{? = call sp_sample_get_contact (?)} but of no avail ;(
-----------------------------
Code in the servlet for excution
Reader configReader = Resources.getResourceAsReader("SqlMapConfig.xml");
SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(configReader);
sqlMap.startTransaction();
HashMap paramMap = new HashMap();
paramMap.put("firstName","");
paramMap.put("contactId", new Integer(1));
sqlMap.queryForObject("spGetContacts", paramMap);
String firstName = (String) paramMap.get("firstName");
sqlMap.commitTransaction();
-----------------------------------------------
Variable FirstName returns "0" instead of expected result .
However if the same operation is tried with simple query way it works fine .
<
select id="getContact " parameterClass="int" resultClass="contact ">select FIRSTNAME as firstName,LASTNAME as lastName, CONTACTID as contactId from CONTACT where CONTACTID = #contactId#</select >Thanks for your all help in advance .
NOTICE: If received in error, please destroy and notify sender. Sender does not waive confidentiality or privilege, and use is prohibited.
Try reordering the parameters in your parameter map. The first parameter should be the String OUT parameter, the second parameter should be the Integer IN parameter.
Jeff Butler
On 8/31/05, Deshpande, Bhushan M (IT) <[EMAIL PROTECTED]> wrote:
