I have a @SessionScoped @Named bean with a @Producer method for a user object:
@SessionScoped @Named
@Producer
@Named @SessionScoped public class UserBean implements S
I'm not an expert but I had a similar problem, and I fixed it in simpler way, by annotating the bean itself with @Alternative, so that the Producer is favored. Could be I'm missing some side effects but this worked as far as I could see / needed.
@Alternative