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

Langage Java Discussion :

Coder un aspect en pur Java


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2010
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 205
    Par défaut Coder un aspect en pur Java
    Bonjour,

    Je développe sur Netbeans, et celui-ci ne prend plus en charge les fichiers aspectJ, je cherche tout d'abord un tutorial qui me permettrai d'écrire un aspect en pure java code, et au pire si vous ne savez pas, j'aurai besoin d'un coup de main. Je souhaiterai à chaque appel d'une certaine méthode, l'encapsuler à l'aider d'un aspect afin de faire quelque chose avant puis faire quelque après.

    Merci de votre aide,
    Babas007

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par Babas007 Voir le message
    Bonjour,

    Je développe sur Netbeans, et celui-ci ne prend plus en charge les fichiers aspectJ, je cherche tout d'abord un tutorial qui me permettrai d'écrire un aspect en pure java code, et au pire si vous ne savez pas, j'aurai besoin d'un coup de main. Je souhaiterai à chaque appel d'une certaine méthode, l'encapsuler à l'aider d'un aspect afin de faire quelque chose avant puis faire quelque après.

    Merci de votre aide,
    Babas007
    sans l'utilisation d'un framework comme par exemple Spring et de ces annotations @Aspect et C° (mais utiliser Spring seulement vous faire quelques aspects… ?) , il n'y a rien dans le langage Java en lui-même qui vous permette de le faire.

    ce plug-in :
    http://plugins.netbeans.org/plugin/2...netbeans-6-7-x
    ne fonctionne pas dans votre situation ?

    ou compilez vos Aspects à l'extérieur de NetBeans avec Ant ou Maven.

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2010
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 205
    Par défaut
    Alors non il n'existe plus de version pour Netbeans, quoi que j'ai trouvé une version non officielle mais après tout, pourrais-je me passer de cet outil, car comme vous l'avez dit, je peux utiliser maven. Voilà mon aspect:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    @Around("execution(void ICommand+.execute())")
        public void execute(ProceedingJoinPoint thisJoinPoint) {
            Session session = HibernateUtil.getSessionFactory().openSession();
            Transaction tx = session.beginTransaction();
            try {
                thisJoinPoint.proceed();
                tx.commit();
            } catch (Throwable ex) {
                Logger.getLogger(ImplicitCommandInvoker.class.getName()).log(Level.SEVERE, null, ex);
                tx.rollback();
            }
            HibernateUtil.getSessionFactory().close();
        }
    Pour utiliser les aspects, dois-je effectuer une compilation séparée?

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par Babas007 Voir le message
    Alors non il n'existe plus de version pour Netbeans, quoi que j'ai trouvé une version non officielle mais après tout, pourrais-je me passer de cet outil, car comme vous l'avez dit, je peux utiliser maven. Voilà mon aspect:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    @Around("execution(void ICommand+.execute())")
        public void execute(ProceedingJoinPoint thisJoinPoint) {
            Session session = HibernateUtil.getSessionFactory().openSession();
            Transaction tx = session.beginTransaction();
            try {
                thisJoinPoint.proceed();
                tx.commit();
            } catch (Throwable ex) {
                Logger.getLogger(ImplicitCommandInvoker.class.getName()).log(Level.SEVERE, null, ex);
                tx.rollback();
            }
            HibernateUtil.getSessionFactory().close();
        }
    Pour utiliser les aspects, dois-je effectuer une compilation séparée?
    Donc vous confirmez que vous utilisez Spring ?

    Alors :

    il faut dans applicationContext.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <aop:aspectj-autoproxy/>
    (et les déclarations du XSD dans l'entête…)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    	xmlns:aop="http://www.springframework.org/schema/aop" 
    …
    		http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd
    (attention à bien spécifier le n° de version du XSD qui correspond à la version de Spring que vous utilisez)

    il faut aspectjweaver.jar et aspectjrt.jar dans le classpath

    il faut que la classe annotée @Aspect soit un bean
    donc soit aussi @Bean, soit déclarée comme tel dans l'application context.

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2010
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 205
    Par défaut
    Pardon, non je n'utilise pas Spring....

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 963
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 963
    Par défaut
    Citation Envoyé par Babas007 Voir le message
    Pardon, non je n'utilise pas Spring....
    alors lire la doc :

    http://www.eclipse.org/aspectj/

    il faudra vous faire vos propres outils d'automatisation des tâches.

Discussions similaires

  1. Webinar autour d'un des aspects de Java.
    Par Pierre8r dans le forum Général Java
    Réponses: 2
    Dernier message: 20/07/2009, 17h57
  2. GUI java : modification de l'aspect de l'interface
    Par Crillick dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 24/03/2009, 14h14
  3. Coder en gérant les vieilles versions JAVA.
    Par gomodo dans le forum Applets
    Réponses: 2
    Dernier message: 06/11/2008, 18h20
  4. Java est-il lent pour le calcul pur
    Par bilibou dans le forum Langage
    Réponses: 6
    Dernier message: 21/04/2007, 13h35
  5. Réponses: 7
    Dernier message: 09/03/2007, 13h19

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