IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

Erreur 06550 invalid number or types of parameter


Sujet :

JDBC Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 115
    Points : 49
    Points
    49
    Par défaut Erreur 06550 invalid number or types of parameter
    Bonjour à tous

    mon probleme est comme suite :

    j'ai une fonction Java qui retourne un integer aprés l'appel d'une fonction Oracle qui a comme type de retour un varchar2 decrivant le deroulement de la fonction et 2 parametre un d'entrée et l'autre de sortie!!!

    voici ma fonction Oracle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
     
    function ps_s_typeacte(p_id_acte in integer ,p_type out integer)
        return varchar2 is
     
         result    varchar2(10) := '0';
        v_sqlcode integer;
        v_sqlmess varchar2(500);
     
     
     
      begin
     
       select DISTiNCT id_type_acte_gestion into p_type
       from t_workflow_statut 
       where  id_workflow_statut like(select max(id_workflow_statut)
        from t_workflow_statut_suivi where id_acte=p_id_acte);
        dbms_output.put_line(p_type);
        v_sqlcode := SQLCODE;
        result    := v_sqlcode;
        return(result);
      exception
     
        when others then
          v_sqlcode := SQLCODE;
          v_sqlmess := SQLERRM;
          dbms_output.put_line('Error ' || to_char(v_sqlcode) || ' Message ' ||
                               v_sqlmess);
          result := v_sqlcode;
          raise_application_error(-20999, v_sqlcode || ',' || v_sqlmess);
          return(result);
      end  ps_s_typeacte;
    une methode java utilise le parametre de sortie p_type (il y a une seule occurence )

    et le retourne en Integer

    voici ma methode Java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    public Integer getTypeActe(Integer _idActe) throws TechnicalException, FunctionalException {
         Integer id;
         String result="";
         IProcCaller caller = ProcCallerHelper.getProcCaller();
         caller.reset();
         caller.setFuncName(FUNC_GET_TYPE_ACTE);
         caller.addParamOut(Types.VARCHAR);
         caller.addParam(_idActe);
         caller.addParamOut(Types.INTEGER);
     
     
         try {
            System.err.println("dans la ps");
            //Exécution de la requette
             ResultSet rs = caller.executeQuery();
            System.err.println("apré la ps");
     
            if (rs != null) {
     
                        while (rs.next()) {
                          id=rs.getInt(3);                                                      
                        }
                     }
     
            result = caller.getString(1);
     
            //Erreurs fonctionnelles
            if (result != null) {
               if (result.equals("0001")) {
                  throw new FunctionalException(CLASS_NAME, ResourceHelper.getMessage("error.oracle.0001"));
               }
            }
     
           /* int id2 = caller.getInt(3);
               id = new Integer(id2);*/
     
            id=new Integer(10);
     
         } catch (Exception e) {
            logger.error(e.getMessage(), e);
            if (e instanceof FunctionalException) {
               throw new FunctionalException(CLASS_NAME, e.getMessage());
            } else {
               throw new TechnicalException(CLASS_NAME, e.getMessage());
            }
         }
     
         return id;
      }

    [/code]

    ça donne une erreur comme quoi le nombre iu le type des parametres n'est pas valide .

    j'ai une autre question

    Comment convertir un entier en un Integer parque là ça donne une erreur :
    et puis est ce que vous avez des remarques sur les indexe des colonne à getter dans la methode getInt ou getString ????

    Merci bq pour votre aide

  2. #2
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    Citation Envoyé par freestyler1982
    ça donne une erreur comme quoi le nombre iu le type des parametres n'est pas valide .
    Tu peux donner le message qui est comme qui dirait affiché et la trace d'exécution qui,comme quoi, donne l'emplacement de l'erreur ?



    Citation Envoyé par freestyler1982
    j'ai une autre question

    Comment convertir un entier en un Integer parque là ça donne une erreur :
    Il me semble qu'il suffit d'un suffit

    Citation Envoyé par freestyler1982
    et puis est ce que vous avez des remarques sur les indexe des colonne à getter dans la methode getInt ou getString ????
    Tu peux reformuler ? Comprends pas quoi toi demander
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 115
    Points : 49
    Points
    49
    Par défaut :)
    merci ça marche pour la conversion

    sinon voici le message d'erreur :


    ORA-06550: line 1, column 13: PLS-00306: wrong number or types of arguments in call to PS_S_TYPEACTE ORA-06550: line 1, column 7: PL/SQL: Statement ignored


    et pour les index je parle des methodes getInt(I) et getString(I)

    je veux savoir le code retour a kel indexe

    merci

  4. #4
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    le problème se situe à l'endroit où tu appelle ta fonction sql. On peut voir le code correspondant ?

    Sinon, elle marche ta fonction ? Tu l'as testée ?

    Citation Envoyé par freestyler1982
    et pour les index je parle des methodes getInt(I) et getString(I)

    je veux savoir le code retour a kel indexe
    je vois pas ce que tu veuix dire ...

    en tout cas ce morceau de code me semble (très) bizarre ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if (rs != null) {
     
                        while (rs.next()) {
                          id=rs.getInt(3);                                                      
                        }
                     }
     
            result = caller.getString(1);
    que cherches tu à faire ?
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

Discussions similaires

  1. [PDO] ERREUR PDO : Invalid parameter number
    Par laurentSc dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 15/12/2013, 19h57
  2. Erreur ORA-01722 "invalid number"
    Par devbegins dans le forum Débuter
    Réponses: 3
    Dernier message: 23/01/2010, 00h14
  3. Réponses: 2
    Dernier message: 27/05/2009, 13h57
  4. Erreur 06550 number or type of parametres est non valide
    Par freestyler1982 dans le forum Oracle
    Réponses: 1
    Dernier message: 17/11/2006, 18h36
  5. Erreur 01722 Invalide number
    Par freestyler1982 dans le forum Oracle
    Réponses: 8
    Dernier message: 09/11/2006, 15h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo