Petit problème avec une classe

Petit problème avec une classe - Java - Programmation

Marsh Posté le 28-04-2003 à 14:13:31    

j'ai fait une classe qui contient plusieurs :
 
le constructeur
une méthode executeRequete(String s)
une méthose setInteger
une méthode setString
 
j'appelle cette classe dans une autre mais elle ne trouve pas la méthode executeRequete et je n'arrive pas à trouver d'où ca vient.
 
 
si quelqu'un a une idée qu'il n'hésite pas !!!


Message édité par tchoupinette le 28-04-2003 à 14:31:30
Reply

Marsh Posté le 28-04-2003 à 14:13:31   

Reply

Marsh Posté le 28-04-2003 à 14:15:40    

Donne le code de ton erreur ou tes sources. Parce que là, je vois pas. A part un problème naturel et gros de classpath, mais je te crois plus adroite...


---------------
Le site de ma maman
Reply

Marsh Posté le 28-04-2003 à 14:16:43    

voila l'erreur :
 
 
source/java/gecko/admin/AdminRightsController.java [124:1] execute() in gecko.content.GeckoSelect cannot be applied to (java.lang.String)
            gs.execute(s);
              ^
1 error
Errors compiling AdminRightsController.
 
les sources, y'en a un peu long quand meme

Reply

Marsh Posté le 28-04-2003 à 14:17:33    

execute ne prends pas de parametre

Reply

Marsh Posté le 28-04-2003 à 14:18:18    

chrisbk a écrit :

execute ne prends pas de parametre


 
si il prend une String

Reply

Marsh Posté le 28-04-2003 à 14:20:13    

Tchoupinette a écrit :


 
si il prend une String


C'est pas ce que ton erreur affiche.


---------------
Le site de ma maman
Reply

Marsh Posté le 28-04-2003 à 14:20:20    

Tchoupinette a écrit :


 
si il prend une String


 
le compilo a pas l'air d'accord avec cette version des faits. ce qui est plutot ennuyant, isn't it ? :D
vraiment sure de ton coup ?

Reply

Marsh Posté le 28-04-2003 à 14:20:24    

je me suis trompée, j'ai pas donné la bonne erreur au dessus, c'est plutot ca :
 
 
source/java/gecko/admin/AdminRightsController.java [124:1] cannot resolve symbol
symbol  : method executeRequete (java.lang.String)
location: class gecko.content.GeckoSelect
            gs.executeRequete(s);
              ^
1 error
Errors compiling AdminRightsControlle

Reply

Marsh Posté le 28-04-2003 à 14:21:39    

puree fo savoir....
bonla il dit que executeRequete(String) n'existe pas.... verifie ton souc


Message édité par chrisbk le 28-04-2003 à 14:21:59
Reply

Marsh Posté le 28-04-2003 à 14:22:24    

Il doit déjà y avoir une méthode execute() dans l'interface.
 
EDIT: en attente.


Message édité par Cherrytree le 28-04-2003 à 14:23:05

---------------
Le site de ma maman
Reply

Marsh Posté le 28-04-2003 à 14:22:24   

Reply

Marsh Posté le 28-04-2003 à 14:22:59    

chrisbk a écrit :

puree fo savoir....
bonla il dit que executeRequete(String) n'existe pas.... verifie ton souc


 
tout le mond peut se tromper.
 
La méthode existe bien. Y'a pas de doute la dessus et je ne vois pas du tout pourquoi il ne le connait pas ...

Reply

Marsh Posté le 28-04-2003 à 14:24:12    

Cherrytree a écrit :

Il doit déjà y avoir une méthode execute() dans l'interface.
 
EDIT: en attente.


 
oui je m'étais trompée e j'ai donné l'autre erreur apres .

Reply

Marsh Posté le 28-04-2003 à 14:32:33    

Personne ne voit d'ou ca peut venir ? Juste pour info je travaille sous sun ONE studio 4 sous un projet qui était déjà réalisé avant auquel j'ai juste ajouté cette fameuse classe.

Reply

Marsh Posté le 28-04-2003 à 14:35:30    

Elle est en public, ta méthode ? Balance le source de ta méthode, on va pas deviner, hein :o


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 28-04-2003 à 14:38:47    

fo le source!!!

Reply

Marsh Posté le 28-04-2003 à 14:41:21    

Taiche a écrit :

Elle est en public, ta méthode ? Balance le source de ta méthode, on va pas deviner, hein :o


 

Code :
  1. public void executeRequete(String s) throws Exception{
  2.        
  3.         StringTokenizer st = new StringTokenizer(s,"#",false);
  4.        
  5.         while(st.hasMoreElements()) {
  6.             a=st.nextToken();
  7.             b=b+a;
  8.             a=st.nextToken();
  9.             b=b+'?';
  10.             list.add(a);
  11.             System.out.println(a);
  12.             valeur.put(a,null);
  13.         }
  14.         stat.setSql(b);
  15.      
  16.         for(int i=0; i<list.size(); i++){
  17.            
  18.             stat.setInteger(i,(Integer)valeur.get(a));
  19.            
  20.         }
  21.        
  22.     }


 
c'est pas encore trop au point mais bon ... voila la fameuse méthode


Message édité par tchoupinette le 28-04-2003 à 14:43:55
Reply

Marsh Posté le 28-04-2003 à 14:45:53    

:heink:
Et euh, la méthode executeRequete(String) c'est bien une méthode de la classe GeckoSelect ?


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 28-04-2003 à 14:46:26    

Taiche a écrit :

:heink:
Et euh, la méthode executeRequete(String) c'est bien une méthode de la classe GeckoSelect ?


 
oui

Reply

Marsh Posté le 28-04-2003 à 14:51:01    

Bon ba les seules possibilités :
* t'as recompilé ta classe GeckoSelect ?
* es-tu sûre d'utiliser la bonne version de cette classe ?
Passke manifestement, si le compilo la trouve pas, c'est que c'est pas la bonne version de cette classe que tu utilises [:spamafote]


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 28-04-2003 à 14:52:37    

Taiche a écrit :

Bon ba les seules possibilités :
* t'as recompilé ta classe GeckoSelect ?
* es-tu sûre d'utiliser la bonne version de cette classe ?
Passke manifestement, si le compilo la trouve pas, c'est que c'est pas la bonne version de cette classe que tu utilises [:spamafote]


 
bah oui je l'ai recom^pilé plusieurs fois et je n'ai qu'une version de cette classe (à ce que je sache), je n'y comprends rien ...  :??:

Reply

Marsh Posté le 28-04-2003 à 14:56:51    

Es-tu certaine que le compilo est configuré pour chercher dans le repertoire où la classe GeckoSchmurtz se trouve ?


---------------
Le site de ma maman
Reply

Marsh Posté le 28-04-2003 à 14:58:02    

Cherrytree a écrit :

Es-tu certaine que le compilo est configuré pour chercher dans le repertoire où la classe GeckoSchmurtz se trouve ?


 
bah je pense que oui c'est là ou se trouve les trois quarts des classes du projet ...

Reply

Marsh Posté le 28-04-2003 à 14:58:47    

Ce problème est absolument passionnant. Je réfléchis...


---------------
Le site de ma maman
Reply

Marsh Posté le 28-04-2003 à 14:59:56    

Cherrytree a écrit :

Ce problème est absolument passionnant. Je réfléchis...


 
et ben moi ce problème me prend bien la tete et en plus je ne peux rien faire tant que je ne sais pas pk ca ne matche pas ...

Reply

Marsh Posté le 28-04-2003 à 15:00:35    

là je suis comme les autres, je ne vois pas. Ca devrait fonctionner.
 
Ta classe GeckoSelect compile bien sans problème ?

Reply

Marsh Posté le 28-04-2003 à 15:01:40    

benou a écrit :

là je suis comme les autres, je ne vois pas. Ca devrait fonctionner.
 
Ta classe GeckoSelect compile bien sans problème ?


 
oui ... j'en ai marre de ce truc !!!  :fou:

Reply

Marsh Posté le 28-04-2003 à 15:03:27    

ca ressemble plus à un problème de config ...
 
essaye de créer une autre classe bidon qui appelle la méthode executeRequete pour voir si ca fonctionne

Reply

Marsh Posté le 28-04-2003 à 15:04:19    

benou a écrit :

ca ressemble plus à un problème de config ...
 
essaye de créer une autre classe bidon qui appelle la méthode executeRequete pour voir si ca fonctionne


 
je vais essayé ...

Reply

Marsh Posté le 28-04-2003 à 15:08:11    

je comprends vraiment pas, dans une classe truc que je viens de créer ca marche  :??:

Reply

Marsh Posté le 28-04-2003 à 15:09:51    

Tchoupinette a écrit :

je comprends vraiment pas, dans une classe truc que je viens de créer ca marche  :??:  


T'as pas 2 classes qui s'appellent GeckoSelect et qui seraient pas dans le même package ?
 
t'as essayer de fermer puis de réouvrir ton éditeur ?

Reply

Marsh Posté le 28-04-2003 à 15:11:44    

benou a écrit :


T'as pas 2 classes qui s'appellent GeckoSelect et qui seraient pas dans le même package ?
 
t'as essayer de fermer puis de réouvrir ton éditeur ?


 
 
non j'ai bien chercher et je n'ai pas trouvé d'autre classe du meme nom et oui j'ai essayé de fermer l'éditeur mais ca ne change rien.

Reply

Marsh Posté le 28-04-2003 à 15:15:53    

efface tous tes .class et recompile ton projet proprement. Si la methode existe dans ton source ca va marcher, tu as probablement un  .class qui a ete compile avant que tu ajoutes la methode en question
 
EDIT: non, ce que je viens de dire est stupide... desole


Message édité par souk le 28-04-2003 à 15:16:37
Reply

Marsh Posté le 28-04-2003 à 15:16:47    

pas bete, je vais essayé ca

Reply

Marsh Posté le 28-04-2003 à 15:23:53    

j'avais edite pour dire que c'etait stupide, paske si ta petite classe de test arrive a appeler la methode, c'est qu'elle est dans ton .class.... bref, je doute que ca marche comme solution... desole  :p

Reply

Marsh Posté le 28-04-2003 à 15:24:21    

souk a écrit :


EDIT: non, ce que je viens de dire est stupide... desole


non non, c'est pas bête du tout ! ca arrive ce genre de truc !

Reply

Marsh Posté le 28-04-2003 à 15:25:46    

souk a écrit :

j'avais edite pour dire que c'etait stupide, paske si ta petite classe de test arrive a appeler la methode, c'est qu'elle est dans ton .class.... bref, je doute que ca marche comme solution... desole  :p  


ha ben ouais tiens ... :/
 
Tchoupi, tu peux balancer le code de ta classe AdminRightsController ? surtout le début (les import et la déclaration de la classe) et la méthode avec la ligne qui plante ...

Reply

Marsh Posté le 28-04-2003 à 15:29:09    

pas si bete que ca ton idée vu que maintenant que j'ai supprimer les .class des deux méthodes ben elle reconnait plus du tout ma classe, pas seulement la méthode executeRequete

Reply

Marsh Posté le 28-04-2003 à 15:30:07    

Code :
  1. package gecko.admin;
  2. import java.util.*;
  3. import javax.servlet.http.*;
  4. import kasper.db.*;
  5. import gecko.controller.*;
  6. import gecko.content.*;
  7. import gecko.reference.*;
  8. import gecko.i18n.*;
  9. public class AdminRightsController extends GeckoController {


 
 

Code :
  1. protected void retrieve(KConnection conn, boolean forUpdate) throws Exception {
  2.         gs = new GeckoSelect(s);
  3.         System.out.println();
  4.         System.out.println();
  5.         System.out.println("Début de la requete" );
  6.         users = conn.executeQuery("select u.usr_id,u.usr_name,u.usr_firstname,u.usr_active from gko_user u order by 2,3,1" );
  7.         System.out.println("fin de la requete" );
  8.         if (user != null) {
  9.             System.out.println("Début de la requete 2" );
  10.             rights = conn.executeQuery("select u.usr_administrator,u.usr_creator,u.usr_validator,u.usr_translator,u.usr_publisher from gko_user u where u.usr_id=" + user + (forUpdate ? " for update" : "" ));
  11.             System.out.println("fin de la requete 2" );
  12.             if (rights.getRowCount() != 1) throw new LocalizedUserException(this, "User_does_not_exist" );
  13.            
  14.             gs.setInteger("USRID",user);
  15.             gs.executeRequete(s);
  16.            
  17.             KDataSet set = conn.executeQuery(s);
  18.             //access = new HashSet();
  19.             // for (int i = (gs.stat).getRowCount(); i-- > 0;) access.add(set.getInteger(i, "cat_id" ));
  20.         }
  21.     }

Reply

Marsh Posté le 28-04-2003 à 15:30:45    

t'aurais pas modifié le répertoire de génération des .class ? (le répertoire de sortit des fichiers compilés) ?
 
cherche si sur ton disque tu as pas le fichier GeckoSelect.class a un endroit kifopa

Reply

Marsh Posté le 28-04-2003 à 15:31:56    

benou a écrit :

t'aurais pas modifié le répertoire de génération des .class ? (le répertoire de sortit des fichiers compilés) ?
 
cherche si sur ton disque tu as pas le fichier GeckoSelect.class a un endroit kifopa


 
je pense pas mais je vais voir ...

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed