L'appel de la fonction pl/sql avec mybatis 3

J'ai une fonction qui renvoie une valeur booléenne en pl/sql. J'ai essayé de
obtenir directement cette valeur booléenne sans succès, alors maintenant, je suis en train de le convertir en chaîne de caractères (je ne veux pas modifier la base de données):

<parameterMap id="publicObject"   type="map">
<parameter javaType="java.lang.Object" jdbcType="VARCHAR" mode="OUT" property="result" /> 
<parameter javaType="java.lang.String" jdbcType="VARCHAR" mode="IN" property="id" /> 
</parameterMap>     

<select id="isPublicObject" parameterMap="publicObject" statementType="CALLABLE">

   <![CDATA[
    {
    declare
    v_bool BOOLEAN := TRUE;
    begin
    v_bool := PACKNAME.STF$IS_PUBLIC_OBJECT(#{id});
    #{result} := CASE WHEN v_bool THEN 'TRUE' ELSE 'FALSE' END;
    end;
    }
    ]]>

</select>

Puis-je obtenir cette exception:
"Erreur d'interrogation de base de données. Cause: org.apache.ibatis.type.TypeException: Erreur de définition de la valeur null pour le paramètre #2 avec JdbcType AUTRES. Essayez de régler un différent JdbcType pour ce paramètre ou un autre jdbcTypeForNull propriété de configuration. Cause: java.sql.SQLException: Invalid type de colonne: 1111 ####

Ce code fonctionne correctement dans la base de données:

declare
    v_bool BOOLEAN := TRUE;
    v_str  VARCHAR2(5);
begin
   v_bool := PACKNAME.STF$IS_PUBLIC_OBJECT('000000');
   v_str := CASE WHEN v_bool THEN 'TRUE' ELSE 'FALSE' END;
   dbms_output.put_line('result:');
   dbms_output.put_line(v_str); 
end;
MyBatis Guide de l'Utilisateur: parameterMap - "c'est une approche obsolète pour le référencement d'un externe parameterMap. Utiliser inline mappages des paramètres et de la parameterType attribut." Voir exemple ici: mybatis.googlecode.com/svn/trunk/src/test/java/org/apache/...

OriginalL'auteur Hernan Diaz | 2013-05-31