22/09/2008
[Java] Servlet-Mapping : Des expressions pas très régulières
Le Servlet Mapping dans un serveur Web permet de rediriger une URL vers un fichier acceptant une requête : une servlet ou une page JSP.
Par exemple la requête GET /wsedupassion/account/12 sera redirigé vers la page /wsedupassion/service/account/account.jsp. Cette page JSP sera capable de traduire le '12' pour récupérer le compte d'index 12 et enverra donc sous forme XML les informations lié à l'utilisateur 12.
<resource>
<class>User</class>
<id>12</id>
<lastName>Zozol</lastName>
<firstName>Nicolas</firstName>
<url>http://www.edupassion.com</url>
<subject>Computer Sciences</subject>
<school>Robusta Web</school>
</resource>
» Lire la suite!
Vous devez être identifié pour poster un commentaire. 19/09/2008
[Java] Le saviez-vous ? Java est un Langage Objet !
Hier, j'ai travaillé sur 4 fichiers tag de mon framework.
Un fichier tag permet de créer une nouvelle balise executant du code Java. Par exemple insérer dans un fichier JSP :
<robusta:auth controller=${usercontroller}/>
va lancer un code permettant de récupérer dans une variable authValue au choix le cookie authtoken ou le header Authorization et d'appliquer au Controller la fonction setAuthorizationValue(authValue).
» Lire la suite!
Vous devez être identifié pour poster un commentaire. 18/09/2008
[Java] Les Enums comme base de données READ-ONLY
Pour mon logiciel d'éducation, je dois composer avec plusieurs matières, et dans plusieurs pays. C'est peu dire que l'apprentissage du Baseball en France n'est pas le même qu'aux Etats-Unis, et que la Géographie n'est pas tout à fait identique en Colombie ou au Vénézuela, aussi le nombre de Matières à gérer est conséquent.
Je ne veux pas que les utilisateurs créent eux-même les matières, sinon on pourrait en trouver en double. Par exemple la matière Equitation alors qu'il peut y avoir 'Spécialité Equitation'. Je préfère que ce soit une SousMatière de Sport. Je classerai donc les matières moi-même, selon la catégorie (litteraire, science), le pays, et avec des sous-matière. Et chaque type d'établissement, selon le pays, reçoit par défaut un groupe de matière.
Dans les premières versions de test, avec une quinzaine de matière inscrites dans MySQL, c'était déjà compliqué à classer : repérer les matière par des indexs de 1 à 15 n'est pas facile. Imaginez de 1 à 1000. Voici par contre ce que cela donne avec des Enum.
» Lire la suite!
Vous devez être identifié pour poster un commentaire. 23/07/2008
[Java] Netbeans & Subversion : un package mal ficelé
Netbeans semble parfaitement intégrer Subversion. Après une petite péripétie pour configurer SVN, importer ou check-out votre projet, Netbeans vous signale les modifications que vous effectuez au fur et à mesure, vous permet de revenir à tout moment à une version précédente, et vous signale les dossiers à "commit" avant de quitter votre poste.
Malheureusement j'utilise en parrallèle Dreamweaver. Et Netbeans ne commit que le fichiers modifiés par Netbeans. Le pire est de renommer ou déplacer un dossier avec Dreamweaver : là tout va mal.
Pour ma part, j'en suis revenu à la séparation des tâches. J'ai dû tout reprendre à zéro et j'utilise Rapid-SVN en plus de Netbeans. Heureusement que je travaille seul sur le projet...
Vous devez être identifié pour poster un commentaire. 27/05/2008
[Web] Edupassion en version Alpha
Ce blog Rest & Java tire ses exemples de l'écriture du site Edupassion.com
Après le bulletin de notes, voici l'éditeur de cours.

Vous pouvez tester de ce début de préversion en vous connectant via les login/pass : edupassion/edupassion ou me demander un compte (ou toute autre question) en m'écrivant à nzozol@edupassion.com
» Lire la suite!
Vous devez être identifié pour poster un commentaire. 12/05/2008
[Web] A la base, je n'ai rien contre Internet Explorer
Mais les images parlent d'elles-mêmes :
Après cette accroche quelque peu racoleuse, je m'explique :
JsUnit est un outil permettant de tester ses fonctions écrit en JavaScript. C'est tout simplement l'équivalent Javascript de JUnit. J'ai programmé mes tests au fur et à mesure en utilisant Firefox, puis à la fin de la semaine, je me suis rappelé l'existence d'Internet Explorer. Au vu des résultats, je me suis dit que la compatibilité présumée de Prototype envers FF et IE allait prendre du plomb dans l'aile. Il m'a donc fallu chercher l'origine de ces bugs.
» Lire la suite!
Vous devez être identifié pour poster un commentaire. 22/03/2008
[Web] Récupérer en Javascript la valeur des boutons Radio Prototype
Classiquement, on récupère la valeur de boutons radios HTML grâce à une balise FORM incorporant l'attribut action pointant sur un script php :
<form action ="script.php" >
<input type="radio" name="radioGroup" id="radio" value="LEAVE_IT" />Leave It
<input type="radio" name="radioGroup" id="radio2" value="TAKE_IT" /> Take It
<input type="button" value="OK" />
</form>
Cette astuce du jour a pour but de récupérer le bouton radio en Javascript, avec la bibliothèque Prototype, sans script php, ni même la balise form.
» Lire la suite!
Vous devez être identifié pour poster un commentaire. 14/02/2008
Créer programmatiquement la bonne balise HTML avec XSLT
Ce petit article permet au débutants ou occasionnels d'XML de créer dynamiquement une balise HTML à partir d'un fichier XML.
Edupassion.com fournira un éditeur de cours online spécialement concu pour les besoins d'un prof. Avec notamment une numérotation des paragraphes de type GrandX, PetitX, et Lettre.
Le but du jeu est donc de traduire la balise XML <paragraph depth="GrandX" number="II">value</paragraph > en <h2>II) value</h2> pour le XHTML, ou <paragraph depth="Lettre" number="c">value</paragraph> en <h4>c)value</h4>
XSLT a pour objectif de transformer le Modèle (fichier XML) en Vue (fichier XHTML), et il eut été logique qu'XSLT transformasse aussi les nombres des paragraphes en caractères adaptés comme "II", ou "c". Cette opération purement fonctionnelle est cependant plus simple et surtout plus propre à la relecture en utilisant Java.
» Lire la suite!
Vous devez être identifié pour poster un commentaire. 01/02/2008
[Web] Microsoft lance une OPA sur Yahoo !
Ca y est, c'est fait, le loup est bel et bien sorti. M$ propose 45 milliards de dollards, soit le double de son trésor de guerre accumulé par la vente de licences Windows et Office. A ce prix-là, elle est pour sûr amicale.
Selon moi, Yahoo! poosède trois activités majeures : le contenu, la publicité et les logiciels web (e-mails, jeux). Est-ce que ces activités combinées remporterons un succès équivalent à Office et Windows ? Quoi qu'il en soit, Steve Balmer a pour ambition d'avoir 30% de son chiffre d'affaire issu de la publicité en ligne, et cela ne pouvait passer sans le rachat de Yahoo!
Sérieusement concurencé et souvent défait par Google sur la plupart de ses marchés, les actions de Yahoo! n'ont pas cessé de chuter ces derniers trimesres bien qu'elles furent, à l'instar d'Ebay et Amazon, encensées au sortir de la crise. Il y a déjà 4 ans... Ce sont ces succès à durée déterminée qui me font toujours douter des prix faramineux atteints par Yahoo et surtout Facebook. Ce matin l'action valait 20$ et augmente de 50% car l'offre de M$ correspond à 30$ l'action.
Edupassion.com n'est pas à vendre, mais si il y a emballement, on peut négocier .
Vous devez être identifié pour poster un commentaire.
[Web] Astuce du Jour : Création dynamique d'Elements HTML avec Prototype 1.6
L'essence d'Ajax est de manipuler un objet ou un document sur le navigateur sans être géné par le temps de latence du serveur.
Cette astuce du jour propose de préparer un peu le terrain en créant dynamiquement sur la page du contenu HTML. Nous verrons dans des articles plus fouillés comment enregistrer la modification sur le serveur.
Le deuxième objectif est de documenter en français la fonction Element#insert( ) de Prototype, qui a ce jour a été "oubliée" par les faiseurs de documentation.
Voici comment créer un Element HTML à l'intérieur d'un autre élément :
» Lire la suite!
Vous devez être identifié pour poster un commentaire. 23/01/2008
[Web] Netvibes Ginger : une petite deception
J'ai depuis quelque mois troqué ma page iGoogle pour Netvibes, plus pratique et faisant moins ramer mon Firefox. En passant à la conférence LeWeb3, j'ai pu obtenir une invitation à l'utilisation de Netvibes Ginger.
Rappelons que Netvibes est une société francaise dont le but premier est d'offrir sur une seule page tout ce qui vous interesse dans le web via des flux RSS ou des Widgets. Netvibes a été très recemment courroné meilleure start-up internationale par les blogs "influents".

Avec Ginger, Netvibes devient social. Vous gardez vos flux dans des pages privées, et vous pouvez maintenant partager ces flux avec vos amis dans des "universes" (en anglais dans le texte).
» Lire la suite!
Vous devez être identifié pour poster un commentaire. 20/01/2008
[Java][Web] Un Blog sur le web RESTful
Les RESTful Web Services sont un des moyens d'accès à des données par Internet. Supposons que vous demandiez à un serveur l'ensemble des lycées français présents aux USA : il existe une infinité de façons pour votre navigateur web de faire cette demande, et, pour le serveur, une infinité de façons de vous répondre.
Afin de se repérer parmi ces solutions, les programmeurs ont développées plusieurs méthodes plus ou moins standardisées, et notamment des méthodes appelées RPC, SOAP ou REST. On appellera un Service Web RESTful si il englobe la grande majorité des bons conseils de Roy T. Fielding, l'inventeur de REST.
Quelle est, au premier abord, la distinction de REST ?
Lorsque vous faites une requete RPC, SOAP ou REST à un serveur, vous incluez bien sûr par cette requete ce que vous demandez au serveur. En utilisant REST, cette demande est facilement décryptable par un être humain.
Par exemple DELETE edupassion.com/webservice/professeur.jsp?id=12 effacera le professeur n°12 inscrit à Edupassion.
Pourquoi REST ?
|
Les avis entre l'utilisation de REST et les méthodes SOAP et RPC sont partagées. Je ne ferais pas un xe débat, mais apparemment REST a gagné la guerre. A mon avis, le principal avantage de REST est de garder un code compréhensible et que l'on peut écrire humainement à la main, alors que SOAP requiererait l'assistance d'un EDI et fournirait par là-même ce que l'on appelle du XML Nightmare. Mais comme toute solution, REST et SOAP ont leurs avantages et inconvénients. Le but de ce blog n'est donc pas de départager, mais de savoir comment utiliser REST au mieux, selon les situations.
|
 |
L'environnement du Blog
Je donnerai beaucoup d'exemples liés au site web Edupassion.com et son framework Robusta que je développe pour mon entreprise Robusta Web. Ce code sera principalement en Java, mais aussi en XML, XSLT, Javascript, JSP, etc. Je publierai aussi de temps en temps l'astuce du jour, dans n'importe quel langage.
Vous devez être identifié pour poster un commentaire.
|
|
Responsable bénévole de la rubrique Les Blogs des Développeurs : adiGuba - Contacter par EMail :
|
|