Boa tarde,
Tenho uma dúvida a respeito de Scope, sei que para utilizar o componente fileUpload do prime faces, o scope deve ser session ou view para funcionar, a dúvida é a seguinte:
1º Cria um AlunoBeam com ViewScope.
@ManagedBean(name="animalBean")
@ViewScoped
public class AnimalBean {
private Animal animal;
private List<Animal> animais;
private UploadArquivo arquivo;
//get seters...
2º Cria um AlunoBeam com RequesteScope e inclui um objeto de uma classe FileUploadBeam(SessionScope).
@ManagedBean(name="animalBean")
@RequestScoped
public class AnimalBean {
private Animal animal;
private List<Animal> animais;
private UploadBeam uploadBeam;
//get seters...
@ManagedBean(name="uploadBeam")
@SessionScoped
public class UploadBeam {
private UploadArquivo arquivo;;
//get seters...
qual das duas formas é a mais correta?
A segunda forma funcionou?
Se sim, isso é uma terrível prática, injetar algo session dentro de um request scoped.
o pior é que não funcionou, poderia me informar qual seria uma boa solução,
pois se colocar o scopo como session q não é uma boa pratica, da uma excessão na hora de apresentar as mensagens(FacesMessagem.get…) no sistema,
e se utiliso o scopo como requeste o fileUpload não funciona… to em um mato sem cachorro…
desde ja agradeço a ajuda
[quote=thayson.silva]o pior é que não funcionou, poderia me informar qual seria uma boa solução,
pois se colocar o scopo como session q não é uma boa pratica, da uma excessão na hora de apresentar as mensagens(FacesMessagem.get…) no sistema,
e se utiliso o scopo como requeste o fileUpload não funciona… to em um mato sem cachorro…
desde ja agradeço a ajuda[/quote]Se você viu que deve ser view ou session scoped, então tem que ser isso. Não tem como escapar.
Se está dando erro é por que tem algo errado na sua codificação e não no escopo.