100分求ibaits调用存储过程过程
Exception:
Caused by: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]The
specified SQL type is not supported by this driver.
jsp:
HashMap hash=new HashMap();
hash.put("jwhbm",jwhbm);
hash.put("varName","jd_jtjkda");
hash.put("NewDAH","");
HashMap p=IbatisSurrogate.ibatisQueryForObject("stzw-jkda-jtjkda.get_jtkjdah",hash);
存储过程:
CREATE PROCEDURE GetJkdah
@jwhbm varchar(10),
@varName varchar(10),
@NewDAH varchar(10) output
AS
DECLARE
@JtjkdahID varchar(6),
@JMjkdahID varchar(6)
if @varName='jd_jtjkda'
begin
SELECT @JtjkdahID=ISNULL(MAX(cast(jtjkdaid AS int))+1,1) FROM jd_jtjkda WHERE SubString(jtjkdah,1,10)=@jwhbm --WITH (NOLOCK)
SET @NewDAH=replace(space(6-len(@JtjkdahID)),' ','0')+CAST(@JtjkdahID AS VARCHAR)
end
GO
XML:
<parameterMap id="jkda_hashMap" class="java.util.HashMap">
<parameter property="jwhbm" jdbcType="varchar" mode="IN"/>
<parameter property="varName" jdbcType="varchar" mode="IN"/>
<parameter property="NewDAH" jdbcType="varchar" mode="INOUT"/>
</parameterMap>
<procedure id="get_jtkjdah" parameterMap="jkda_hashMap" resultClass="java.util.HashMap"><![CDATA[
{call GetJkdah(?,?,?)}
]]>
</procedure>
谁知道哪里出了问题,请高手指教...存储过程是正确的..可以正确执行....