Hi,
i have made stored procedure in oracle and try to run the
output in the store procedure through IBATIS. The problem is i am
having two output parameters and i want to execute it in the IBATIS
I am calling my procedure as
<parameterMap id="inputNewRegisterMap" class="newRegisterMap" >
<parameter property="StartDate" jdbcType="VARCHAR2" javaType="java.lang.String" mode="IN"/>
<parameter property="EndDate" jdbcType="VARCHAR2" javaType="java.lang.String" mode="IN"/>
<parameter property="lvocode" jdbcType="VARCHAR2" mode="IN"/>
<parameter property="outputnewRegister" jdbcType="ORACLECURSOR" mode = "OUT" resultMap = "spNewRegister" />
<parameter property="outputResults" jdbcType="VARCHAR2" mode = "OUT" resultMap = "spNewRegister" />
</parameterMap>
<procedure id="getNewRegistrationList"
parameterMap="inputNewRegisterMap" resultMap = "spNewRegister">
{ call SP_NEWREGISTRATION(?, ?, ?, ?, ?) }
</procedure>
but while implementing it in dao
i think i am not able to implement it properly
i am defining like
public NewRegistrations[] getNewRegistrationList(ReportRequest
reportRequest)
{
NewRegistrations[] newRegistrations = null;
try
{
daoManager.startTransaction();
Map newRegisterMap = new HashMap();
newRegisterMap.put("StartDate",reportRequest.getFrmDate());
newRegisterMap.put("EndDate",reportRequest.getToDate());
newRegisterMap.put("lvocode",reportRequest.getLvoCodes());
queryForObject("getNewRegistrationList",newRegisterMap);
ArrayList lstnewRegister = (ArrayList)
newRegisterMap.get("outputnewRegister");
lstnewRegister = (ArrayList)
newRegisterMap.get("outputResults");
if(null != lstnewRegister)
{
newRegistrations = new NewRegistrations[lstnewRegister.size()];
}
for (int index=0; index < lstnewRegister.size(); index++)
{
newRegistrations[index] = (NewRegistrations)
lstnewRegister.get(index);
}
}
finally
{
daoManager.endTransaction();
}
return newRegistrations;
, i want to define the second
output parameter as i have bold it.plz suggest
Regards,
Puneet Arya