Genéricos restringidos con CDI
La especificación JSR-299 establece en §3.1:
Si la clase de bean administrado es un tipo genérico, debe tener un alcance @Dependent. Si un bean administrado con una clase de bean parametrizada declara cualquier alcance que no sea @Dependent, el contenedor automáticamente detecta el problema y lo trata como un error de definición.
Efectivamente significa que no puedes hacer esto:
@Named
@SessionScoped or @RequestScoped or similar
public class MyProducer<T> {...}
¿Cuáles son las razones técnicas de esta decisión?
¿Será remediado en una próxima versión de CDI por casualidad?
¿Existe alguna práctica recomendada para tratar / solucionar este problema?
Gracias
EDITAR - una solución alternativa que a menudo puedo usar es inyectar un bean POJO genérico en un bean con el alcance necesario. A menudo, pero no siempre.