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

Spring Boot Java Discussion :

@ApplicationScope sur un @Bean ne marche pas pour Spring Boot


Sujet :

Spring Boot Java

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    728
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 728
    Points : 250
    Points
    250
    Par défaut @ApplicationScope sur un @Bean ne marche pas pour Spring Boot
    Bonjour j'ai une application Spring Boot

    l'annotation @ApplicationScope ne fonctionne pas très bien. Voici ma classe:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    @Configuration
    public class ApplicationPropertiesConfig {
    
        @Bean
        @ApplicationScope
        @Qualifier("propertiesConfig")
        public PropertiesConfig getPropertiesConfig() throws NamingException {
            Context initCtx = new InitialContext();  --> JE METS UN POINT D'ARRET ICI
            Context envCtx = (Context) initCtx.lookup("java:comp/env");
            String env = (String) envCtx.lookup("staffAccessEnvironment");
            ........
            ........
            ........
            return ......;
        }
    }

    Quand je mets un point d'arrêt à la première ligne de la méthode getPropertiesConfig() et que je démare l'application, ça ne passe pas dans la méthode getPropertiesConfig()

    Quand j'enlève l'annotation @ApplicationScope, au démarrage de l'application, ça passe dans cette méthode.

    Visiblement, il existe un problème avec l'annotation @ApplicationScope. Si j'utilise l'annotation @Scope("application"), j'ai le même soucis. Comme vous l'avez deviné je veux créer un @Bean avec le scope application.

    Pourquoi ça ne marche pas ?

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 462
    Points : 896
    Points
    896
    Billets dans le blog
    5

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    728
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 728
    Points : 250
    Points
    250
    Par défaut
    Bonjour Philippe, j'avais déjà lu cette ressource. Dans mon code, je l'ai implémenté de la même manière. Il y a autre chose qui ne va pas

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 462
    Points : 896
    Points
    896
    Billets dans le blog
    5
    Par défaut
    Dans ce cas là, il me faut plus d'indications.

    De plus, si on cherche une ressources, on fait de la façon suivante (exemple du projet au travail):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    package fr.cisirh.explorateur.config;
     
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.ComponentScan;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.PropertySource;
     
    import fr.cisirh.explorateur.controller.util.ConfigurationApplication;
    import fr.cisirh.explorateur.controller.util.ConfigurationApplicationImpl;
     
    /**
     * Cette classe regroupe l'ensemble de la configuration de la couche controlleur. Elle est utilisée dans la configuration de l'application.
     * @author pgibault-adc
     *
     */
    @Configuration
    @PropertySource({"file:///${ext.prop.dir}/cisirhExplorateur/cisirhExplorateur.properties"})
    @ComponentScan({"fr.cisirh.explorateur.controller","fr.cisirh.explorateur.controller.configuration"})
    public class ControlleurConfiguration {
     
    	@Value("${isDisponible:true}")
    	private boolean isDisponible;
     
    	/**
             * 
             * @return Le bean qui donne diverses données sur l'application (est-elle disponnible,...).
             */
    	@Bean
    	public ConfigurationApplication configurationApplication() {
    		return new ConfigurationApplicationImpl(isDisponible);
    	}
    }
    Pour les ressources:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    @PropertySource({"file:///${ext.prop.dir}/cisirhExplorateur/cisirhExplorateur.properties"})

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/11/2006, 17h23
  2. Commande ftp sur free qui ne marche pas!
    Par Death83 dans le forum Administration
    Réponses: 1
    Dernier message: 07/11/2006, 18h08
  3. Mon test sur la date ne marche pas
    Par dachir dans le forum Access
    Réponses: 7
    Dernier message: 12/08/2006, 10h23
  4. FileGetAttr ne marche pas pour les dossiers ?
    Par WebPac dans le forum Delphi
    Réponses: 13
    Dernier message: 06/07/2006, 14h36

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