IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tomcat et TomEE Java Discussion :

AOP sur du code déployé dans tomcat


Sujet :

Tomcat et TomEE Java

  1. #1
    Candidat au Club
    Inscrit en
    Avril 2008
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut AOP sur du code déployé dans tomcat
    Bonjour,

    Je vais éviter de m'étendre sur la programmation par aspect car je ne pense pas que des compétences importantes dans ce domaine soient nécessaires pour résoudre mon problème.

    Je vous explique rapidement mon utilisation de l'AOP. J'utilise jboss-aop en ce qui concerne le framework et injecte (ce sera plus simple comme cela) le code à loadtime.
    > J'ai un jar avec mes aspects (code java normal)
    > J'ai un fichier de configuration xml qui contient la description des endroits où je veux injecter les aspects.
    > J'ai quelques libs de dépendances.

    Grâce à cela, je peux injecter mon code dans un code existant sans avoir à le recompiler en utilisant le loadtime weaving (tissage(injection) au chargement de la classe).

    Habituellement, j'ai juste à rajouter mes libs dans le classpath du soft dans lequel j'insère mon code et donner deux arguments (un java agent) à la ligne de commande de lancement. (donc deux options pour la JVM)

    Je voudrais maintenant injecter du code dans une appli web qui est déployée sous tomcat. J'ai du mal à savoir comment fonctionne exactement Tomcat au niveau du déploiement de ses applications. Voilà mes questions :

    - Tomcat fait il tourner une JVM dans laquelle il alloue un espace pour chacune des applis qu'il déploie ?
    - Si vous avez compris mon exemple d'injection, où dois-je donc préciser mon agent java ?

    Problème relatif à la deuxième question : Si je dois spécifier à tomcat mes arguments au lancement de tomcat, comment peut il résoudre des chemins d'applis qu'il n'a pas encore déployé ? En effet, mes arguments (le java agent et le fichier xml) font référence au code de l'appli web en spécifiant des noms de classes pleinement qualifiés.

    J'attend vos demandes de précisions concernant mon problème car je me doute que ce n'est pas tout à fait clair mais je ne sais par où commencer.

    Merci beaucoup par avance.

    Alexis

  2. #2
    Membre habitué

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 143
    Points : 157
    Points
    157
    Par défaut
    Pour répondre brièvement à tes deux questions :
    - Tomcat utilise une seule JVM
    - Tu dois spécifier cela dans le script de lancement de Tomcat

    Il te faut donc avoir prévu à l'avance ton fichier XML avec le nom des classes que tu vas déployer.

    Attention, je n'ai pas utilisé JBoss AOP depuis des années, et je ne sais pas s'il peut correctement tourner sur un Tomcat "nu" (à l'opposé du Tomcat intégré dans JBoss).
    Julien Dubois

    http://www.ippon.fr

Discussions similaires

  1. Classpath dans une application déployée sous Tomcat
    Par iviath dans le forum Tomcat et TomEE
    Réponses: 5
    Dernier message: 14/05/2009, 12h09
  2. question sur un code proposé dans la FAQ
    Par Sh4dow49 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 07/04/2009, 15h24
  3. Ecriture sur un fichier.txt dans tomcat
    Par xsafary dans le forum Java ME
    Réponses: 1
    Dernier message: 21/05/2007, 09h39
  4. Réponses: 7
    Dernier message: 17/04/2007, 14h51
  5. Réponses: 6
    Dernier message: 09/01/2007, 15h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo