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

Langage Java Discussion :

invoquer les méthodes et accèder aux attribut d'un javaBeans


Sujet :

Langage Java

  1. #1
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 110
    Par défaut invoquer les méthodes et accèder aux attribut d'un javaBeans
    Bonjour à tous,

    J'ai déja travaillé avec des bean dans des jsp, mais pas dans du code java à propement parler. Quelqu'un aurait-il un exemple, un tuto ou autre sous la main qui montre comment invoquer les méthodes d'un bean dans un autre code source?

    Dans mon cas, mon bean s'appel accentBean, il est composé d'une methode public void removeAccent, qui prend en argument une String s et qui remplace les caractères accentué par des caractères non-accentués, et les méthodes getS et setS.

    Dans mon code principal Main.java (je bosse sous netbean 5.0), j'ai essayer d'instancier une classe du genre:

    public class testRemoveAccent {
    accentBean monBean = new accentBean();
    monBean.removeAccent();
    }

    Et là, netbean me dit toujours <identifier> expected, mais je ne sait pas quoi faire pour résoudre le problème.

    D'avance merci beaucoup

  2. #2
    Membre éprouvé Avatar de Satch
    Homme Profil pro
    Hypnothérapeute - Magicien
    Inscrit en
    Mars 2004
    Messages
    500
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Suisse

    Informations professionnelles :
    Activité : Hypnothérapeute - Magicien

    Informations forums :
    Inscription : Mars 2004
    Messages : 500
    Par défaut
    Citation Envoyé par scolyo
    il est composé d'une methode public void removeAccent, qui prend en argument une String s
    ...
    public class testRemoveAccent {
    accentBean monBean = new accentBean();
    monBean.removeAccent();
    }
    Tu as dis juste avant que ta méthode removeAccent prend une String en paramètre.
    Donc quand tu fais monBean.removeAccent();, c'est normal que ça ne marche pas. Il faut lui donner une String en paramètre, du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String s = "une string ou les accent doivent être supprimés";
    monBean.removeAccent(s);
    Avec ce que tu nous dit, ça doit être ça.

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 110
    Par défaut
    Ben non ça marche pas. J'ai essayé différente variable String présente mais sans succès.

    ça peut aider si je poste mon code source?

  4. #4
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Peus-tu nous montrer le code de la classe accentBean

    PS : [HS] par convention le nom des classes Java commence par une majuscule [/HS]
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 110
    Par défaut
    Voici le code source de mon bean accentBean.java

    package g2i2ldap;
    import java.beans.*;
    import java.io.Serializable;

    public class accentBean extends Object implements Serializable {
    private String s;

    public accentBean() {
    s = null;
    }

    public void removeAccent() {
    s = s.replaceAll("[èéêë]","e");
    // de même pour plein d'autre caractères accentués
    }

    public String getS(String s) {
    return s;
    }

    public void setS(String s){
    this.s = s;
    }
    }

    ça ne m'a pas l'air trop compliqué, mais je ne pratique pas tous les jours, et je ne comprends vraiment pas ou je me plante

  6. #6
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    En fait t'on erreur viens de ta classe testRemoveAccent (j'avais pas fait gaffe )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public class testRemoveAccent {
    accentBean monBean = new accentBean();
    monBean.removeAccent();
    }
    en effet ceci n'est pas bon du tout, tu ne peus pas mettre ton code comme ça au milieu de la classe, il te faut le mettre dans une méthode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public class testRemoveAccent {
         static public void main(String ...args) {
              accentBean monBean = new accentBean();
              monBean.removeAccent();
         }
    }
    PS :
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  7. #7
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 110
    Par défaut
    Whoww!!! Attends, j'ai déja une fonction main dans mon code source (c'est déja un beau bazar en fait, je me suis seulement souvenus des bean après avoir commencé).

    ça ne va pas poser problème d'avoir plusieurs fonction main?

  8. #8
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 110
    Par défaut
    Au fait, désolé pour les balises, je ne savais pas

  9. #9
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Je l'ai mis dans un main car apparement c'est une classe de test (donc qui ne fait pas parti de ton "vrai" code), il te suffit ensuite de lancer la classe de test (sous NetBeans : MAJ + F6 quand tu es sur la classe en question ).
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  10. #10
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 110
    Par défaut
    Yeeeha, ça marche, merci beaucoup!!!!!!

    Juste une tite dernière question, c'est la même démarche pour les getter et les setter, ou faut s'y prendre autrement?

    En tout cas encore merci, je n'aurais jamais trouvé tout seul

  11. #11
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Pour les getters est les setters la convention veut que ce soit get ou set, suivi par le nom de l'attribut concerné. exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public class MacClasse {
       private String maChaine;
     
       public String getMaChaine() {
          return this.maChaine;
       }
       public void getMaChaine(String maChaine) {
          this.maChaine = maChaine;
       }
    }
    à noter que la première lettre de l'attribut se transforme en majuscule.

    Dans ton code ils sont bon mis à part le fait que le getter ne doit pas avoir de paramètre (inutile).
    De plus sous NetBeans tu peus les générer automatiquement avec le refactoring (Encapsulate Fields).
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  12. #12
    Membre confirmé
    Inscrit en
    Juin 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 110
    Par défaut
    Ok, merci beaucoup pour le cours , ça aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Accéder aux attributs d'un sous type
    Par 0sef40 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 09/11/2011, 12h21
  2. Réponses: 2
    Dernier message: 26/11/2009, 14h00
  3. Accéder aux Attributes
    Par Gregory.M dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 24/10/2008, 12h32
  4. Réponses: 7
    Dernier message: 10/11/2007, 16h04
  5. [SimpleXML] Accéder aux attributs d'un objet
    Par DeezerD dans le forum Bibliothèques et frameworks
    Réponses: 10
    Dernier message: 28/08/2007, 16h39

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