I've read about all the differences between the types of scope (@SessionScoped, @ViewScoped, @ApplicationScope and @RequestScope), however, I'm still facing somehow a problem with my application. I have a page-1 with a grid and I send the selected item to a page-2(both page-1 and page-2 are using the same backing bean) to be edited and then persisted. My managed bean was using @RequestScoped from javax.faces.bean.RequestScoped as I've understood it was the ideal scope to use but it didn't work, the bean was being destroyed and the data was getting lost.
Resuming the story, I've changed the annotation to @SessionScoped and it worked but I would like to know if it is a good practice or not? Because I've read that it is not a good practice to use @SessionScoped as the data will be kept alive until the client logout.