Chamada EJB em construtor JSF

1 resposta
cs.santos0

iai pessual, bele?..

estou com uma duvida e não to entendendo o comportamento aki…

tipo…tenho uma chamada de um Session Bean no meu MBean do JSF atraves do seguinte codigo:

MBean:

@EJB
private PratoDiaRemote pratoDiaRemote;

private List<Cardapio> getCardapioPorId(Long id) {
        List<Cardapio> pratos = this.pratoDiaRemote.getCardapios();
        System.out.println(pratos.size());       
        return new ArrayList<Cardapio>();
    }

essa implementação é só um teste…

mas entao, ai se eu chamo esse metodo no construtor do Managed Bean ele da erro, falando que não consegue instanciar meu MBean, que ele esta null…porem se eu tiro a chamada desse metodo (getCardapioPorCod) do construtor e coloco dentro de um metodo que será chamado por um botao, por exemplo no action de um a4j:commandButton, ai funciona corretamente…

alguem sabe me explicar o pq disso acontecer?..realmente eu não posso ter uma chamada de um EJB dentro do contrutor de um MBean do JSF?

abraços

1 Resposta

jrfercar

Sei que o tópico já é antigo, mas a injeção via @EJB não ocorre no construtor.
Para resolver o problema, crie um método e execute-o através de um dos gets, ligados à página JSF.

Criado 17 de setembro de 2009
Ultima resposta 2 de set. de 2011
Respostas 1
Participantes 2