begin process at 2010 02 10 03:11:49
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > DKSERRORFRAMEWORK : UN PETIT ENSEMBLE DE CLASSE POUR AUTOMATISER LES MESSAGES D'ERREUR

DKSERRORFRAMEWORK : UN PETIT ENSEMBLE DE CLASSE POUR AUTOMATISER LES MESSAGES D'ERREUR


 Information sur la source

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Astuces Classé sous :erreur, ressourcebundle, jdialog, joptionpane, messagebox Niveau :Débutant Date de création :31/03/2007 Date de mise à jour :03/04/2007 21:12:26 Vu / téléchargé :3 694 / 278

Auteur : DARKSIDIOUS

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Je vous propose une toute petite source qui vous permet d'automatiser les messages d'erreurs.

Rien de très compliqué : une énumération des erreurs possibles, un fichier de ressources pour stocker le message à afficher.

Les points techniques :
Utilisation d'un RessourceBundle => possibilité de faire des localisations des messages assez simplement (il vous faudra tout de même modifier 2-3 choses dans ma source pour y arriver, car je n'ai pas prévu le cas, mais c'est rien à faire !).
Enumération avec des propriétés étendues (qui a dit que les enum ne servaient qu'à lier un entier à un nom de constante ?).

L'avantage de ma source ? Faire des messages d'erreurs standard en une seule ligne de code !

Petite mise à jour afin d'ajouter une fonctionnalité : l'écriture d'un log des erreurs + passage à un pattern singleton du coup.
L'utilisation du log est facultative.

De plus, le formattage du log est personnalisable : vous pouvez soit créer une nouvelle classe implémentant l'interface ILogWritter, soit étendre la classe CSimpleLogWritter, soit utilise simplement la classe CSimpleLogWritter pour avoir le formattage par défaut.

Source

  • // très simple à utiliser pour afficher une erreur :
  • // sans log :
  • CError.createInstance();
  • CError.getInstance().showError(EErrorType.ErreurCreerBase, true, true, "");
  • // avec log :
  • CError.createInstance(System.getProperty("user.dir") + "\\test.log", new CSimpleLogWritter());
  • CError.getInstance().showError(EErrorType.ErreurCreerBase, true, true, "");
// très simple à utiliser pour afficher une erreur :
// sans log :
CError.createInstance();
CError.getInstance().showError(EErrorType.ErreurCreerBase, true, true, "");

// avec log :
CError.createInstance(System.getProperty("user.dir") + "\\test.log", new CSimpleLogWritter());
CError.getInstance().showError(EErrorType.ErreurCreerBase, true, true, "");


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

03 avril 2007 21:12:26 :
Ajout du système de log. Passage au pattern singleton pour la gestion de l'écriture du log (plus simple à gérer).

 Sources du même auteur

Source avec Zip Source avec une capture DKSWORDART : UN EDITEUR DE WORDART PERSONNALISÉ EN JAVA
Source avec Zip Source avec une capture DKSWARPEDITOR : TRANSFORMEZ UNE IMAGE TRÈS SIMPLEMENT
Source avec Zip Source avec une capture MARIO BROS : LE JEU DE MARIO
Source avec Zip Source avec une capture DKSTEXTUREEDITOR : CRÉEZ DES TEXTURES COMPLEXES TRÈS SIMPLEM...
Source avec Zip Source avec une capture DKSSHADOWEDITOR : UN ÉDITEUR D'OMBRE SUR DES OBJETS GRAPHIQU...

 Sources de la même categorie

Source avec Zip CLASS DEMINEUR par Niidhogg
AJOUTER LE MAIL À LA LISTE DE CONTACT HOTMAIL POUR EVOLUTION... par sarathai
Source avec Zip ENVOI MAIL AVEC JAVA par mdahmoune
Source avec Zip Source avec une capture JADE PAR LA PRATIQUE par mdahmoune
CHUNKEDXML, LIRE DU XML PAR MORCEAU par AlexN

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture CONNEXION MYSQL VIA UN JDIALOG par amundain
Source avec Zip Source avec une capture UNE JDIALOG POUR LES ERREURS DÉTAILLÉS par romuluslepunk
Source avec Zip Source avec une capture MESSAGE BOXE par AbriBus
Source avec Zip Source avec une capture GRADIENTPAINT VISUALISATION ( ET ANIMATION ) par gulamh
MSGBOX par TheSaib

Commentaires et avis

Commentaire de celphys2 le 01/09/2007 13:16:05

J'espère que je ne réveille pas un ancien thread de code oublié...

L'idée d'une gestion simplifiée des erreurs est indispensable. Cependant, créér ton propre logger fichier, alors qu'il existe plusieurs librairies toutes faîtes reconnues comme standard t'impose une contrainte en plus je pense. (commons-log et log4j par exemple).

Maintenant l'idée est bonne dans le contexte d'un application SWING. Plusieurs remarques pour améliorer cette gestion :
1. Dans une ligne de fichier properties tu peux insérer des paramètres

Par exemple :
error.invalidparam=Le paramètre {0} passé dans la méthode {1} est invalide.

Pour construire le message d'erreur tu fais:
MessageFormat.format(monResourceBundle.getString("error.invalidparam"), new Object[] {nomParametre, nomMethode});

2. Créer une classe de type ErrorHandler avec tes méthodes statiques à appeler.

public void gestionErreurParametreInvalide(String nomParametre, String nommethode) {
String monMessage = MessageFormat.format(monResourceBundle.getString("error.invalidparam"), new Object[] {nomParametre, nomMethode});
[..]
}
=> Je ne passe pas le type d'erreur en paramètre je fais une méthode spéciale et c'est dans la méthode que j'appele le bon error code, le bon type d'erreur etc....

En espérant être constructif.

Commentaire de DARKSIDIOUS le 01/09/2007 14:33:09 administrateur CS

Non non, ce n'est pas un code oublié, c'est juste que je bosse sur un autre projet actuellement, mais ce code là me sera bientôt utile pour une autre application.

Merci de tes remarques, t'as tout à fait raison !

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Mess Erreur Aff 2 fois [ par kaliel ] Dans une fonction simple, j'ai un 'if (...) .......' et si cette condition n'est pas remplie, j'affiche un JOptionPane :JOptionPane.showMessageDialog( JDialog JOptionPane [ par xpla ] bonjour, Dans mon programme il ya un menu qui fait apparaitre un JDialog. Sur ce JDialog il exixte un boutton valider qui fait apparaitre un JOpionPa JProgressBar et FtpConnection [ par flolag ] Salut,J'ai un applet qui peut permettre d'envoyer un fichier sur un serveur Ftp. Je voudrais que quand l'utilisateur appuie sur envoyer une barre de p actualiser une JComboBox [ par mdrcedrick ] bonjour à tous lors du chargement de mon panel je rempli ma JComboBox avec des données de ma BDD, depuis un autre panel j'ai un formulaire, une fois r condition qui ne fonctionne pas [ par oceane751 ] Bonjour à tous!! J'ai un petit soucis avec ma condition if.Je vous montre le code, je vous explique après ;) [code]                                jcombobox [ par kawtar_ch ] bonjour tout le monde!!je voudrais remplir ma jcombobox a partir des elements d'une colonne de ma base de données, j'ai utilisé le programme suivant m Thread et JFrame [ par cerco2 ] bonjour,je vous remerci d'abord pour m'avoir aidé aussi rapidement pour mon premier topic sur le forum.actuellment j'ai un autre problème, toujours av Erreur de compile sous Eclipse [ par egwene ] Salut à tous,J'espère que vous pourrez m'aider je suis à court d'inspiration !J'ai un projet J2EE sous eclipse avec Apache, JBoss, MySQL et utilisant erreur de type "java.lang.NoSuchMethodError" [ par anisj1m ] bonjour; j'utilise jboss avec wtp. j'ai une servlet qui vas appeler un ejb3. dans mon bean j'ai bien definie une methode (public contact addcontact) e Ecrire un JPasswordField dans un JOptionPane [ par CicinhoRaul ]


Nos sponsors


Sondage...

Comparez les prix


HTC Hero

Entre 550€ et 550€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,764 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales