Journal javabean != réseau ?

Posté par .
Tags : aucun
0
4
déc.
2007
Cher journal,

c'est un coup de gueule que je veux pousser là.

Je suis un admin unix de la vieille école. Un dur, un tatoué, un gars qui connait par coeur le man bash, et qui utilise vi. Je dégaine tcpdump dès le moindre problème réseau, et transformer un linux par défaut en uber-config qui tue, ça me plaît. Je navigue dans le /proc comme un bateau sur l'eau et je me passe la lecture du code source en fond sonore pour m'endormir.

Bref.

Je prends des cours du soir pour passer un diplome d'ingénieur (je suis autodidacte à la base).

J'ai choisi un module intitulé "Système et applications répartis" par gourmandise. Rhah, le bon linux tuné à mort, du Kerrighed, du torque, du cluster, des analyses de flux, du réseau à donf, du myrinet, du gigabit, des rhaaah, des rhaaaaaââââah, je peux jeter tous mes mails me vantant le v4gri4 je n'en ai plus besoin, oh oui, rhah, c'est bon!

A tort. Plus cruelle est la chute lorsque nous naviguons sur les falaises de l'insouciance, bercés d'une ignorance doucereuse. (ça chie à l'oreille ce genre de phrase, hein?).

Le programme complet du module est basé uniquement sur, devinez quoi, java.

Premier cours : "n'ayez pas peur, java gomme le réseau, vous n'avez pas à vous en soucier".

Oh, mais ho, là! c'est quoi ce bronx?!! Applications réparties. Ca veut dire java chez vous ou c'est moi qui ferait mieux de retourner pleurer dans les jupes de ma nana et il vaut mieux que je retourne lire la RFC 1149 pour me consoler?

De plus, java fonctionne n'importe comment. Premier exercice. RMI (remote message invocation ou un truc du genre). Je me base sur localhost pour lancer mon serveur rmi. Ma machine uber-tunee firewallee avec des regles iptables que meme le pentagone m'appelle tout les deux jours pour pouvoir jeter un oeil dessus ne fonctionne pas. Pourtant tout est ouvert pour localhost sur le port concerné. Nib, que dalle, que pouic, rien, nada, tipota, le serveur ne veut pas s'enregistrer sur rmiregistry. Ce grand couillon de rmiregistry veut accéder à toutes mes interfaces (j'ai 5 eth, plus un plip) malgré le "localhost" demandé. Quand j'utilise le bon vieux netcat, lui il écoute comme il faut. Groumpf (enfin ca m'aura permis de sortir tcpdump). Bref, poubellization, rmi zéro, ça gomme tellement le réseau que tu ne peux plus firewaller honnetement ta machine. C'est à ta machine de s'adapter a java. C'est du n'importe quoi.

Deuxieme sujet, les Bean. Et c'est la ou je me tourne vers vous, chers lecteurs et cheres lecteuses car je ne comprends strictement rien a cette chose hideuse.
Le but est de faire un pauvre serveur de e-commerce qui permettra a un client de choisir des trucs accessibles depuis une base de données (mySQL ouf), puis connaitre le prix de sa commande et passer son ordre, puis recevoir un mail (c'est facultatif).

Je sais que parmi vous résident certains virtuoses mozartiens qui écrivent du java avec la fluidité d'un constipé qui aurait pris une double dose de dragées fuca!

Donc, connaissez vous des pointeurs de doc qui expliquent ce qu'est un Bean, comment ça marche, et surtout comment utiliser NetBeans (le prof tient absolument à ce que nous utilisions NetBeans, j'ai pas le choix, je voulais utiliser un vrai éditeur comme vi, et eclipse est absolument prohibé). De plus, il faut utiliser Jonas comme serveur. (Peuvent pas utiliser apache comme tout le monde, ces gens là? PHP+apache+MySQL, c'est du gâteau tellement millefeuillesques que ça te rend un grand sourire béat aux lèvres que même ta voisine appelle les flics parcequ'elle s'imagine que tu fumes des pétards de drogue prohibées).
Je suis allé voir chez développez.com, mais il n'y a me semble t'il que des tutoriaux eclipse.

Donc, wé, à votre bon coeur, msieur dame, si vous connaissez une doc qui me permette d'arriver au but, même en faisant du Quick'n Dirty, ca ne me dérange pas. Merci, le bon dieu vous le rendra, votre noyau linux se compilera plus vite, stallman te parlera dans ton sommeil, et vas en paix, ta voisine te regarde en souriant, pense plutôt à aller lui parler que lire mes conneries
  • # excellent

    Posté par . Évalué à 8.

    Excellent, on dirait les tontons flingeuers \o/
  • # To fight the bug, you must understand the bug

    Posté par . Évalué à 7.

    Profite de l'occasion pour connaître enfin le monde de Java, et le juger, en toute connaissance de cause.
    • [^] # Re: To fight the bug, you must understand the bug

      Posté par . Évalué à 6.

      J'ai pris un cours de developpement objet, la j'ai fait du java, c'est plus normal. J'ai eu 17/20. Mais ca commence a etre lointain (2 ans et demi)

      J'ai pris un cours de reseau, j'ai du faire du java. (et j'ai eu, je sais plus, 16 je crois). Le but du cours etait de faire un bon vieux serveur de chat, projet que tous les etudiants en info ont du connaitre.

      Je pensais en avoir fini avec java. Je reprends un cours de "systeme et applications reparties".
      Et hop, bis repetita, one more time, again, 2, le retour du fils vengeur, la suite, on prend les memes et on recommence, bam, devinez quoi, il faut faire du java!

      Donc bon, on remet le couvert une fois de plus, je vais bouffer du java une fois de plus, mais la j'ai du mal a avoir une vision d'ensemble, d'ou ma question sous forme de boutade. Autant la prog java, une fois qu'on a capté ce qu'est un objet, c'est OK (c'est des méthode et des attributs); autant un serveur de chat, ça ne m'a pas posé de problème parceque je connaissais bien le réseau, mais là, je me noie un peu.

      J'ai trouve des tutoriaux sympathiques sur java et eclipse, mais j'ai besoin de java et netbeans.

      L'internet est rempli de bonnes docs, pedagogiques et tout, mais la, je ne trouve pas le saint graal qui saurait expliquer, ni en 300 pages, ni en 300 lignes de code sans commentaires, comment fonctionne Jonas, comment ajouter un bean ecrit sous netbeans et comment un client lambda derriere son firefox peut voir du Acheuteumeuleuh. Je suis sur que parmi les lecteurs de linuxfr il y en a qui se sont posés ces questions et qui ont trouvé de bonnes références, voire même ecrit eux-mêmes leur doc.

      Dans un deuxieme temps, je verrais comment un bean peut taper dans une base de donnees.

      Ce que je raconte montre peut etre ma grande ignorance dans ce sujet, mais j'ai besoin d'un peu d'aide, justement..
    • [^] # Re: To fight the bug, you must understand the bug

      Posté par (page perso) . Évalué à 2.

      Et bien après avoir fait des études où le langage principal était Java et avoir bossé 6 mois à faire du J2EE, je ne puis qu'être, en connaissance de cause, on ne peut plus d'accord avec le monsieur.

      Java, c'est un truc remplit de noms obscurs qui sert à faire des trucs dont on n'aurait jamais eu besoin si il n'y avait pas Java.

      Java est idéal pour tous ces projets qu'on fait sans plus savoir réellement pourquoi on les fait.

      Java est bénit par les entreprises de consulting en informatique.

      Java est un langage adoré par tous les gens qui ne savent pas faire autre chose que du Java et se spécialise dans son vocabulaire abscons pour se donner de l'importance.

      Java dispose d'un millier de doc sur le web. Aucune de ces docs ne dit la même chose qu'une autre et toutes partent du principe que tu connais déjà ce qui est dedans. (et j'ai des exemples ultra précis pour étoffer).

      Java a permis de créer une vraie pénurie d'informaticiens, de doubler le coût de l'informatique moderne et d'être au même niveau de productivité qu'il y a 10 ans.

      Java est à la programmation ce que MS Comic est à la mise en page.
  • # Trop gros, passera pas.

    Posté par . Évalué à -8.

    On est mardi, c'est pas encore l'heure du troll :p


    (Au cas où le dénommé octane serait sérieux, je n'aurais qu'une chose à répondre: PEBKAC)
  • # CNAM de l'Isle d'Abeau ?

    Posté par . Évalué à 4.

    Otes-nous d'un doute : tu es en cycle ingénieur au CNAM de l'Isle Abeau ?
  • # Cool

    Posté par . Évalué à 8.

    et je me passe la lecture du code source en fond sonore pour m'endormir.


    Tu les trouves où ? (j'imagine que tu n'utilise pas un système de text to speech, on comprend rien avec ces machins)

    Désolé, je suis le 5ème commentaire, et le 5ème qui ne répond pas du tout à ta question ...
  • # Hu ?

    Posté par . Évalué à 10.

    Premier exercice = RMI ?
    C'est une blague ? Votre prof a voulu vous faire peur ?
    Quand on connait rien à Java on commence pas par faire du RMI, on fait tout sur le même serveur et on ne manipule pas d'objets distants.
    Ca reviendrait à commencer le C++ par faire du CORBA.

    Un bean c'est simplement un objet qui sert à transbahuter les infos entre les différentes couches : créé au niveau accès BDD, il sera manipulé par la couche métier et balancé à la couche affichage (jsp), modifié via un formulaire par l'utilisateur final, il sera contrôlé puis réinjecté dans la base.
    C'est un objet qui comporte des attributs et des accesseurs et qui n'a pas besoin de faire des traitements par lui même (il est manipulé).
    • [^] # Re: Hu ?

      Posté par . Évalué à 6.

      """
      C'est une blague ? Votre prof a voulu vous faire peur ?
      Quand on connait rien à Java on commence pas par faire du RMI, on fait tout sur le même serveur et on ne manipule pas d'objets distants.
      """

      J'ai comme l'impression que le monsieur, fort de son « expérience », s'est inscrit à ce module en « oubliant » l'inscription aux modules précédents.
      C'est juste une impression mais bon...
    • [^] # Re: Hu ?

      Posté par . Évalué à 6.

      Ca reviendrait à commencer le C++ par faire du CORBA.

      Faudrait peut être pas exagérer un peu trop beaucoup quand même. (sans mentionner le coup de pied au cul de mémé devant le fossé remplit d'orties fraiches, de tessons de bouteilles et de seringues usagées)

      Pour ma part j'ai fait du rmi alors que débutant en java, c'était certes trop tôt, mais pas insurmontable.
    • [^] # Re: Hu ?

      Posté par . Évalué à 2.

      Pervers ...
    • [^] # Re: Hu ?

      Posté par . Évalué à 2.

      Certains l'appellent "Monopole", d'autres "bean"
      ( voir http://linuxfr.org/comments/885952.html#885952)
    • [^] # Re: Hu ?

      Posté par . Évalué à 4.

      C'est une instance de structure de données ?
      putain, tu viens de défoncer tout un mythe, j'ai tout un pan de vastes mondes imaginaires qui viennent de s'effondrer en moi, plus jamais cet odeur de mystère ne me parviendra en lisant ce mot qui dont le sens m'était précédemment inconnu.

      v me coucher pour la peine.
  • # Saikoi un Bean ?

    Posté par (page perso) . Évalué à 8.

    Tu as une classe Java, appelons-là Plop.
    Bon.
    Elle a une propriété private String m_toto; dans un coin.
    Après tout pourquoi pas, hein ?
    Elle a aussi deux méthodes :
    - public String getToto() { return m_toto; }
    - public void setToto(String p_toto) { m_toto = p_toto; }

    Voilà, tu as un Bean. C'est tout bêtement une classe Java qui respecte la règle de nommage des getters/setters (et sont publics) :
    - getProperty() pour obtenir la valeur ;
    - setProperty() pour la renseigner.
    Il n'est même pas nécessaire d'avoir les deux.

    Après si tu parles d'EJB (Enterprise Java Bean) je passe le relai. J'y ai touché (EJB2) et plus jamais ça.

    Par contre, pourquoi JoNaS ? Un bête Tomcat suffirait amplement à mon avis...
    • [^] # Re: Saikoi un Bean ?

      Posté par (page perso) . Évalué à 6.

      Et histoire de pinailler
      1 - normalement un bean a un constructeur vide
      2 - si property est de type boolean le getter peut alors s'appeler soit getProperty() ou isProperty()

      En fait l'intérêt principal des beans c'est que grâce à ces conventions il est très facile de les introspecter même sans connaître la structure de la classe (cf java.beans.Introspector), pour les sérialiser par exemple.
      • [^] # Re: Saikoi un Bean ?

        Posté par (page perso) . Évalué à 3.

        Tant qu'à pinailler est-ce que m_toto est un bon choix de nom de variable ? Non d'après la doc [1]


        [1] http://java.sun.com/docs/codeconv/html/CodeConventions.doc8.(...)
        • [^] # Re: Saikoi un Bean ?

          Posté par (page perso) . Évalué à 3.

          Il n'est dit nulle part qu'il est interdit de préfixer les variables pour indiquer leur scope. Le caractère '_' n'est pas interdit (seulement en premier caractère). Je commence bien par une minuscule.

          Je suis la règle suivante :
          - variable statique : s_xxxYyy
          - variable membre : m_xxxYyy
          - paramètre de méthode : p_xxxYyy
          - variable locale : xxxYyy

          Après c'est comme toute convention, on aime ou pas. Ça l'avantage d'être clair et d'éviter tout masquage involontaire (et donc de ne pas nécessiter le this).
  • # Peut etre une piste pour la pêche aux infos

    Posté par . Évalué à 4.

    Je crois que vous allez devoir oublier beaucoup d'idées reçues, et investir beaucoup de temps, car attaquer les RMI sur un premier cours, vous avez du louper les précedents.

    Sinon voici la page d'une personne qui propose sur internet des ressources de bonne qualité pour l'initiation aux applications distribuées en java :
    http://tahe.developpez.com/
  • # Bon courage

    Posté par . Évalué à 2.

    Pour les javabean, l'explication sur wikipedia est relativement clair:
    http://fr.wikipedia.org/wiki/JavaBeans

    Des objets tout bête (une classe avec des attributs, et vous ne touchez pas directement aux attributs, mais vous utilisez des get et des set pour cela: cela permet à ceux qui réutilisent l'objet de ne pas mettre n'importe quoi dans les attributs).

    Pour NetBeans et JOnAS: toute mes condoléances
    (Plus sérieusement, NetBeans est de bonne qualité, mais plus spécialisé/moins standardisé qu'Eclipse, j'imagine qu'il vaut mieux se diriger vers la doc officiel: http://www.netbeans.org/kb/40/using-netbeans/index.html

    Il y a tout de même des forums spécifiques JOnAS et NetBeans sur developpez.com, avec un thread pointant sur des tutoriels NetBeans en Flash: http://www.developpez.net/forums/showthread.php?t=59074

    Et le forum JOnAS: http://www.developpez.net/forums/forumdisplay.php?f=308 (il a des actions chez Bull le prof?), le tuto officiel n'était pas suffisant? http://jonas.objectweb.org/current/doc/doc-en/integrated/get(...)

    Ah, oui, une dernière chose: évitez les toutes dernières version de Java, JOnAS et/ou NetBeans (d'une part le prof ne sera pas forcément au point dessus et ne pourra pas vous aidez, d'autre part, les tutos ne sont pas forcément mis à jour rapidement et enfin, les plus gros bugs de compatibilité n'ont pas forcément encore été découvert). Donc l'avant dernière version stable encore supporté est une bonne chose).

    Encore une fois, toutes mes condoléances pour le duo JOnAS+NetBeans (il aurait été autrement plus facile de trouver de l'aide sur Eclipse+Tomcat/JBoss ou les différentes version propriétaire d'Eclipse ou de serveurs d'applications).
    • [^] # Re: Bon courage

      Posté par (page perso) . Évalué à 3.

      Plus sérieusement, NetBeans est de bonne qualité, mais plus spécialisé/moins standardisé qu'Eclipse


      Plus spécialisé, sans doute. Mais que veux-tu dire par moins standardisé ?

      Sinon c'est pas très sympa de donner un lien vers la doc de netbeans 4.0 alors que la 6.0 viens tout juste de sortir :-)

      http://www.netbeans.org/kb/index.html
      • [^] # Re: Bon courage

        Posté par . Évalué à 2.

        C'est lointain, mais en gros le système de build (les deux ont leur système de build spécifique, mais il me semble que c'est plus simple de reprendre un projet utilisant ant avec Eclipse) des projets et l'architecture. i.e. par bien des aspects Eclipse ressemble à un framework, on peut utiliser des bouts d'Eclipse pour en faire autre chose, et Eclipse intègre facilement des bouts d'autre chose. Je ne crois pas que NetBeans ait été construit dans cette optique.

        (standardisé dans le sens industrie automobile en fait, pas exactement dans le sens norme, bonne pratique, mais plus dans le sens rationalisé/mutualisé)

        Je dis des conneries?
        • [^] # Re: Bon courage

          Posté par (page perso) . Évalué à 2.

          Oui un peu :)

          NetBeans tout comme Eclipse est une plateforme qui peut être utilisé comme base pour d'autres projets : http://www.netbeans.org/features/platform/index.html

          Pour ma part, je préfère NetBeans à Eclipse qui est d'un fouilli absolu alors que NetBeans est beaucoup plus abordable ergonomiquement parlant.

          L'association LinuxFr ne saurait être tenue responsable des propos légalement repréhensibles ou faisant allusion à l'évêque de Rome, au chef de l'Église catholique romaine ou au chef temporel de l'État du Vatican et se trouvant dans ce commentaire

        • [^] # Re: Bon courage

          Posté par (page perso) . Évalué à 2.

          mais il me semble que c'est plus simple de reprendre un projet utilisant ant avec Eclipse


          Je ne crois pas. Il est aussi simple de rependre un projet basé sur ant dans netbeans que dans eclipse. En fait netbeans utilise ant dans son système de build par défaut. Et il est également possible d'en adjoindre d'autres, par exemple netbeans propose un plugin pour compiler des projets avec maven.
  • # passe le bonjour...

    Posté par . Évalué à 9.

    j'ai rien compris à ce dont tu causes, mais je profite du ton détendu de ce journal pour te demander de passer le bonjour à Pierre Tramo !

    Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

    • [^] # Re: passe le bonjour...

      Posté par . Évalué à 1.

      > passer le bonjour à Pierre Tramo !

      Il est passé à .Net.
      • [^] # Re: passe le bonjour...

        Posté par . Évalué à 6.

        Java pas la tête ? Il n'est pas net d'avoir fait ça !

        Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it

  • # hum

    Posté par . Évalué à -3.

    Je suis un admin unix de la vieille école. Un dur, un tatoué, un gars qui connait par coeur le man bash


    si t'es de la vieille école j'aurais pensé que tu utiliseras le Bourne Shell.

    Rhah, le bon linux tuné à mort, du Kerrighed, du torque, du cluster, des analyses de flux, du réseau à donf, du myrinet, du gigabit,


    Peut-etre que t'aurais du te renseigner sur cette formation avant de t'y inscrire.


    Premier exercice. RMI


    je te rassure, le RMI c'est pas très utilisé. Par contre j'attend tes posts dans quelque semaines tes récriminations sur les servlets.

    allez bon courage ....
    • [^] # Re: hum

      Posté par (page perso) . Évalué à 10.

      je te rassure, le RMI c'est pas très utilisé.


      1.3 millions d'utilisateurs en France en mars dernier, ça commence à faire, quand même.
  • # Qu'est-ce qu'un bean ?

    Posté par . Évalué à 6.

    Donc, connaissez vous des pointeurs de doc qui expliquent ce qu'est un Bean, comment ça marche,

    Là tu exagère. En cherchantun peu sur google on trouve des trucs du genre :


    http://www.chez.com/bean/
    http://fr.wikipedia.org/wiki/Mr._Bean
  • # La voisine

    Posté par . Évalué à 3.

    ta voisine te regarde en souriant, pense plutôt à aller lui parler que lire mes conneries


    Bon conseil! Ma voisine te remercie par avance.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.