mercredi 25 juin 2008

Monitorer une application avec JConsole

A fond dans JMX!!!!
JMX fournit une api qui permet de développer des MBeans.
Ces MBeans peuvent être déployer sur un serveur et monitorer.

A côté de ca, il y a JConsole, fournit avec le JDK (tout du moins a partir du 1.5).
Cette application permet d'obtenir des informations sur :
  • les applications qui tournent
  • les threads
  • la consommation mémoire
  • etc...
que ce soit en local ou sur une machine distante

Bref, je vous laisse découvrir tout ca dans un article plus complet, disponible ici.
Il y a d'autres informations sur le site de Sun, à cette adresse.

mardi 24 juin 2008

développer une application cliente BEA

Ca doit être mon premier post, dans lequel je ne transmets pas les news de quelqu'un!
S'en est presque émouvant... ;)

Ma situation :
- développer une console d'administration d'un cluster de serveurs weblogic 10
- avoir une couche de présentation qui fonctionne en mode console

Après avoir créer mes MBeans, puis utiliser un MBeanExporter pour ne pas avoir à créer de MBeanFactory grâce à Spring. Sous eclipse ma librairie fonctionnait très bien, je l'ai donc placé en référence de mon projet dans lequel j'avais la couche de présentation.
Et là, la grande question :
- comment faire pour ne pas avoir à installer weblo sur mon poste et ne pas avoir à mettre en dépendant l'intégralité du répertoire lib de cette même installation.

Et bien la doc de bea est très bien faite!
il suffisait d'aller voir http://edocs.bea.com/wls/docs100/client/index.html
c'est la qu'on apprend la manipulation suivante :
trouver un poste sur lequel est installé weblogic 10.
se placer dans WL_HOME/server/lib
et taper la commande :
   java -jar ../../../modules/com.bea.core.jarbuilder_X.X.X.X.jar

ou X.X.X.X est la version du Jar bien entendu.
ceci génère un wlfullclient.jar qui fait a peu près 60Mo.
en l'ajoutant au classpath de votre application, elle dispose des librairies suffisantes pour développer
une application cliente.

pour pousser le vice, si vous utilisez maven :

mvn install:install-file -Dfile=wlfullclient.jar \
-DgroupId=weblogic-fullclient \
-DartifactId=wlfullclient \
-Dversion=10.0 \
-Dpackaging=jar \
-DgeneratePom=true


et dans votre pom il ne vous restera plus qu'à ajouter la dépendance générée.
Elle est pas belle la vie ?

lundi 23 juin 2008

Gradle - l'outil de build

Ant est vieillissant mais il est possible que son intégration avec Ivy lui confère une seconde jeunesse.
Pour ma part le passage a Maven se fait très bien, je considère cet outil comme très puissant,
même si c'est aussi un fichier XML de plus...
Il y a un grand intérêt à cette description par balise, mais parfois un bon langage de script ca manque!
En attendant, pour ceux qui n'aiment pas Maven, et qui comme moi, pensent que Ant ne se renouvelle pas, peut être que la solution viendra de Gradle.
Cet outil supporte les repository de Maven et Ivy, il y a du script, support le build de multi-projets...
Nous en entendrons peut-être parler bientôt.

lundi 9 juin 2008

Différents type de OutOfMemory ne Java

Les performances sont importantes, l'utilisation d'outils tels que JProfiler permettent d'obtenir le détail des allocations mémoires.
Pourtant, il arrive parfois d'être confronté à des "OutOfMemory"... grrr
L'article suivant présente 3 types d'erreurs rencontrées et les solutions pour les éradiquer :
- Heap Memory error,
- Non-heap memory error,
- Native memory error

samedi 7 juin 2008

Des liens pour programmeur

Des liens, des liens toujours des liens, pour en apprendre toujours plus!
Des ebooks gratuits, des exemples de codes...
En voici quelques uns ici.

vendredi 6 juin 2008

Java, une liste de tutoriaux

Voici une liste assez riche pour apprendre, réapprendre, améliorer nos connaissances de Java.
Tout y passe, le coeur, les servlets, corba, rmi, la 2D, Swing... bref plein de choses à lire pendant les longues soirées d'hiver :p

Quelques astuces pour eclipse

Eclipse, le fameux environnement de développement, devient de plus en plus lourd.
L'article dont je propose le lien, donne quelques petites astuces pour qu'il consomme un peu moins de mémoire.
A voir, a essayer, il y en a une ou deux sur lesquelles j'ai des doutes.
Par exemple, celle qui préconise de décocher des "validations".

mercredi 4 juin 2008

Hudson, le serveur qui monte

L'intégration continue fait de plus en plus parler d'elle.
On voit souvent des projets utilisant continuum, cruise control, et un outsider fait son apparition Hudson.
Il me semble en avoir déjà parlé, voici une comparaison en nombre de téléchargements entre Hudson et Cruise Control.

Des ressources java...

Une liste de plus, des bouquins à lire, des sites à parcourir, des mailing-lists à contacter en cas de problèmes.
Tout se trouve ici.