Observação: estou usando WildFly 8.1 já com todos os módulos!
import java.io.Serializable;
import javax.enterprise.context.SessionScoped;
import javax.inject.Inject;
import javax.inject.Named;
@Named
@SessionScoped
public class Teste implements Serializable{
private static final long serialVersionUID = -1959931207415412383L;
@Inject
private Casa casa;
}
Quando removo SessionScope e coloco o Request tudo funciona normal!
Quando você usa o Tomcat você coloca aquela anotação lá que você colocou, que no qual seria uma implementação do WELD que implementa a especificação CDI. Como você está usando o Wildfly que ele por padrão já usa o CDI, você precisa não precisa informar aquela anotação que você importou blz?
Desculpas mas não entendi o pq não consigo uma classe que está no contexto do wildiFly
import javax.enterprise.context.SessionScoped;
Em verdade, só funciona se usar a de outra API
javax.faces.bean.SessionScoped
Porque o javax.faces.bean.SessionScoped ele é do JSF, Se você usar o Tomcat você precisa do .jar do Weld onde ele implementa o CDI e essa anotação e o import.javax.enterprise.context.SessionScoped o container que seria o Tomcat não possui esse Jar.
Então, estou usando o WildFly 8.1 e os jar estão todos lá, assim como o módulo está devidamente configurado! Não entendo o pq, quando eu optp por import.javax.enterprise.context.RequestScoped o servidor encontra a página e funciona normal. Tentei criar um projeto no eclipse obrigando ele a usar o CDI,
mas ainda continua com esse problema. Se o CDI oferece um conteiner em substituição da lib import javax.faces.bean ect…Não entendi o pq problema ainda!