Bean Constante Injetado pelo Spring 3

5 respostas
furacao123

Aew galera estou tentando desenvolver um bean @Component no Spring 3, que ficara responsavel por receber os dados de constante da aplicação como por exemplo diretorios no servidor e outros valor

@Component
public class ConstantesWS {
    
    @Value(value="${ws.dir.base}")
    public static String dirBase;
    
    @Value(value="${ws.arquivo.danfe.jasper}")
    public static String dirDanfeJasper;
    
}

Mas a duvida é esses atributos sao static como eu faço para serem injetados, por exemplo em alguma classe utilizo ConstantesWS.dirBase, como eu faço o Autowired desses atributos da classe?

5 Respostas

WRYEL

se são constantes “public static void final” porquê você não as inicializa apontando para o caminho real da outra classe?

edit:

veja se isso aqui resolve: http://hanuska.blogspot.com/2010/05/how-to-wire-constant-in-spring.html

furacao123

vou utilizar como static final, mas a duvida é da para fazer essa injecao em atributos static por anotação?

WRYEL

Nem eu sabia que dava pra fazer isso e fiquei surpreso :smiley:
veja esse link : http://stackoverflow.com/questions/317687/inject-property-value-into-spring-bean , inclusive, vou usar nos meus aqui também :slight_smile:

furacao123

problema é que se tentar usar com final, nao consigo injetar os valores, pois me obriga a dar valor na propria classe

furacao123

voce diz o @Value?

se for o problema é que toda classe que for implementar essas constantes, eu tenho de declarar o atributo e o @Value, acho que fica inviavel

Criado 26 de setembro de 2011
Ultima resposta 26 de set. de 2011
Respostas 5
Participantes 2