Acessar componente no escopo @ApplicationScoped

4 respostas
renanpto

Bom Dia,

Tenho um componente anotado com @ApplicationScoped.

Preciso acessar esse objeto na pagina jsp usando EL.

Estou usando a convenção do nome da classe com a primeira letra minuscula para tentar encontra-lo, mas nao esta encontrando o objeto.

Codigo:

${ applicationScope.nomeDaClasseComPrimeiraLetraMinuscula }

Alguem sabe como devo fazer ?

Nos controllers esse objeto é injetado normalmente.

Valeu

4 Respostas

Lavieri
renanpto:
Bom Dia,

Tenho um componente anotado com @ApplicationScoped.

Preciso acessar esse objeto na pagina jsp usando EL.

Estou usando a convenção do nome da classe com a primeira letra minuscula para tentar encontra-lo, mas nao esta encontrando o objeto.

Codigo:
${ applicationScope.nomeDaClasseComPrimeiraLetraMinuscula }

Alguem sabe como devo fazer ?

Nos controllers esse objeto é injetado normalmente.

Valeu

quase certeza que não exporta.... para pagina o App Scoped... segue uma forma de fazer
@Intercepts
public class AppScopedInerceptor implements Interceptor {
     private final SeuComponenteAppScoped comp;
     private final Result result;
     AppScopedInerceptor(SeuComponenteAppScoped componentAppScopped, Result result) {
       this.comp = componentAppScopped;
       this.result = result;
     }

     //não lembro o nome dos métodos 
     accepts() { return true; } //no metodo de aceitar vc retorna true

     intercept(...){
         result.inclde("nomeQueVocQuerAcessarDaView",comp);
         stack.next(argumentos que não lembro quais);
     }
}

isso resolve seu problema (não estou com IDE aki, por isso o codio meio maluco)

renanpto
Lavieri:
renanpto:
Bom Dia,

Tenho um componente anotado com @ApplicationScoped.

Preciso acessar esse objeto na pagina jsp usando EL.

Estou usando a convenção do nome da classe com a primeira letra minuscula para tentar encontra-lo, mas nao esta encontrando o objeto.

Codigo:
${ applicationScope.nomeDaClasseComPrimeiraLetraMinuscula }

Alguem sabe como devo fazer ?

Nos controllers esse objeto é injetado normalmente.

Valeu

quase certeza que não exporta.... para pagina o App Scoped... segue uma forma de fazer
@Intercepts
public class AppScopedInerceptor implements Interceptor {
     private final SeuComponenteAppScoped comp;
     private final Result result;
     AppScopedInerceptor(SeuComponenteAppScoped componentAppScopped, Result result) {
       this.comp = componentAppScopped;
       this.result = result;
     }

     //não lembro o nome dos métodos 
     accepts() { return true; } //no metodo de aceitar vc retorna true

     intercept(...){
         result.inclde("nomeQueVocQuerAcessarDaView",comp);
         stack.next(argumentos que não lembro quais);
     }
}

isso resolve seu problema (não estou com IDE aki, por isso o codio meio maluco)

Já tinha pensando nessa solução, queria confirmar se tivesse um jeito mais simples e também saber se esses atributos são exportados.

:wink: valeu

Lucas_Cavalcanti

Só os componentes request e session scoped ficam disponíveis na jsp por causa do jeito que o Spring monta esses escopos…

pros componentes application scoped vc vai ter que criar o interceptor ou algo do tipo mesmo, por enquanto…

renanpto

Lucas Cavalcanti:
Só os componentes request e session scoped ficam disponíveis na jsp por causa do jeito que o Spring monta esses escopos…

pros componentes application scoped vc vai ter que criar o interceptor ou algo do tipo mesmo, por enquanto…

Eu utilizei um interceptor :smiley: .

Obrigado

Criado 1 de maio de 2010
Ultima resposta 1 de mai. de 2010
Respostas 4
Participantes 3