On pourrait croire à un conte mythologique mais pas du tout.
Si vous aimez les webservices et si vous êtes enthousiaste à propos d'Ajax, apprenez à travers cet exemple comment coupler les deux pour créer des applications riches orienté services :)
jeudi 20 mai 2010
mercredi 28 avril 2010
Performances comparées Axis2, Metro, CXF
Si vous hésitez entre Axis2, Metro et CXF pour choisir une API d'utilisation de webservices, les performances de chacune des 3 peut être un argument supplémentaire.
mercredi 17 mars 2010
PMD - vérifier si une variable est null
Au cours d'un projet, j'ai eu pour tâche de vérifier le code avec PMD afin de l'améliorer et ainsi de diminuer les bugs (grossiers pour la plupart).
Et là je me suis rendu compte qu'il n'existait aucune règle PMD qui permettait de vérifier si avant d'appeler une méthode d'un objet, un test de nullité de cet objet avait été fait.
En gros est-ce que j'avais des blocs de code comme ca :
Objet obj=getObjectFromAnotherMethod();//potentially null !
obj.doSomething();
Alors qu'il faudrait mieux avoir :
Objet obj=getObjectFromAnotherMethod();//potentially null !
if(obj!=null)
obj.doSomething();
J'ai donc remonté mes manches et suis assez fier de vous présenter la règle PMD XPath qui permet de vérifier cette bonne pratique !
//MethodDeclaration/Block/BlockStatement/Statement//StatementExpression/PrimaryExpression
/PrimaryPrefix/Name
[substring-before(@Image,".")=
./ancestor::Block/BlockStatement/LocalVariableDeclaration//VariableDeclaratorId
[not (../VariableInitializer/Expression/PrimaryExpression/PrimaryPrefix/Literal)
and not(../..//PrimitiveType)
and not (../VariableInitializer/Expression/PrimaryExpression/PrimaryPrefix/AllocationExpression)]
/@Image
and
not( substring-before(@Image,".")=
./ancestor::BlockStatement/Statement/IfStatement/Expression//EqualityExpression
[../../..//NullLiteral]
/PrimaryExpression/PrimaryPrefix/Name/@Image )
]
N'hésitez pas à me faire des commentaires si la règle n'est pas satisfaisante, si vous avez des cas où elle marche pas !
Et là je me suis rendu compte qu'il n'existait aucune règle PMD qui permettait de vérifier si avant d'appeler une méthode d'un objet, un test de nullité de cet objet avait été fait.
En gros est-ce que j'avais des blocs de code comme ca :
Objet obj=getObjectFromAnotherMethod();//potentially null !
obj.doSomething();
Alors qu'il faudrait mieux avoir :
Objet obj=getObjectFromAnotherMethod();//potentially null !
if(obj!=null)
obj.doSomething();
J'ai donc remonté mes manches et suis assez fier de vous présenter la règle PMD XPath qui permet de vérifier cette bonne pratique !
//MethodDeclaration/Block/
/PrimaryPrefix/Name
[substring-before(@Image,".")=
./ancestor::Block/
[not (../VariableInitializer/
and not(../..//PrimitiveType)
and not (../VariableInitializer/
/@Image
and
not( substring-before(@Image,".
./ancestor::BlockStatement/
[../../..//NullLiteral]
/
]
N'hésitez pas à me faire des commentaires si la règle n'est pas satisfaisante, si vous avez des cas où elle marche pas !
vendredi 12 mars 2010
XPath et JQuery
XPath et JQuery sont 2 "expression language" permettant de manipuler du XML pour par exemple retrouver des éléments selon leur type, leur attribut, etc....
Mais comment choisir entre XPath et JQuery? Cet article peut vous aider.
Plus spécifiquement que JQuery, cet article vous explique comme l'utiliser depuis le navigateur web.
Pour Xpath, voici un explication de l'API et 3 tutoriels d'introduction pour apprendre à la manipuler :
Mais comment choisir entre XPath et JQuery? Cet article peut vous aider.
Plus spécifiquement que JQuery, cet article vous explique comme l'utiliser depuis le navigateur web.
Pour Xpath, voici un explication de l'API et 3 tutoriels d'introduction pour apprendre à la manipuler :
jeudi 11 mars 2010
Les frameworks PHP qui valent le coup
Voici dans cet article une liste de frameworks PHP qui permette de faire du code beau, intelligent (à voir la compatibilité avec l'interface chaise <-> clavier) en un minimum de temps.
C'est beau la technologie.
C'est beau la technologie.
mercredi 24 février 2010
De Excel au XML, en Java
Voici un exemple d'utilisation de l'API Apache POI pour lire des documents Excel (et autres) depuis du code Java.
Ensuite, l'auteure aborde la transformation Excel <-> XML : utile pour stocker des données et re-générer à la volée des nouveaux fichiers Excel.
Ensuite, l'auteure aborde la transformation Excel <-> XML : utile pour stocker des données et re-générer à la volée des nouveaux fichiers Excel.
mardi 16 février 2010
Introduction à Google SideBricks
Et si créer des applications web dynamiques (j'ai pas dit des applications web RIA hein mais bien dynamique c'est à dire qui se servent de données stockées en base par exemple) devenait simple ?
Google Sidebricks apporte une réponse :
Google Sidebricks apporte une réponse :
- expression language simple
- annotations permettant la mise en place de paramètre dynamique
- Modèle MVC et principalement les parties View et Controller
Inscription à :
Articles (Atom)