¿Cómo se define la sesión en @SessionScoped
CDI bean?
¿Es esta anotación válida solo cuando se llama desde el contenedor del servlet, donde la sesión está bien definida en el formulario de HttpSession
?¿Cómo funciona @SessionScoped con EJB? ¿CDI es solo para web-tier?
Si no, ¿cómo puede saber un EJB con @Inject @SessionScoped MyBean myBean
cuál es realmente la sesión? Quiero decir, los métodos de este EJB podrían haber sido invocados por un cliente independiente, RESTful WS o por alguna otra vista.
¿Qué debería pasar en tal caso? Si la anotación no tiene sentido, ¿debería inyectarse una nueva instancia MyBean
para cada solicitud o quizás debería conservar la misma instancia en todas las solicitudes?
Realmente, ¿cómo más se define una sesión incluso para algo así como un SFSB? Por supuesto, no hay nada que te prohíba crear tu propio alcance y vincularlo a lo que quieras. – LightGuard
@LightGuard, supongo que en SFSB la "sesión" dura desde la instanciación de SFSB hasta su eliminación (o tiempo de espera). Así que, mientras tenga una referencia, llegaré al mismo entorno (sesión). –
@Gonzalo, gracias por esta información. Me pregunto: ¿qué pasaría si utilizara el bean '@ SessionScoped' en un entorno donde no existe tal alcance (es decir, REST WS como se menciona en la pregunta). ¿Cada solicitud se trata como una nueva sesión? ¿Qué hay de SFSB, como mencionó LightGuard? ¿El '@ SessionScoped' se referirá a la sesión' HttpSession' o a la sesión de SFSB? –