Boa tarde companheiros,
Estou com um problema no componente FileUpload do Primefaces, já pesquisei mas não achei nada que parecesse com o que estou tendo.
Seguinte, o componente só faz upload do primeiro arquivo a ser enviado, exemplo: seleciono um arquivo e mando ele fazer o upload, funciona perfeitamente. Más caso eu selecione outro arquivo e faça o upload, simplesmente trava e nem chama o listner. Só votla a funcionar se eu fechar o Dialog e abrir novamente (funcionar no primeiro arquivo).
Alguém tem uma ideia? Vou postar os códigos para ajudar.
Classe Bean (Está resumida mostrando apenas o método em questão):
@ManagedBean("ManterVersaoListarBean")
@Controller
@Scope("session")
public class ManterVersaoListarBean
{
public void fileUpoload(FileUploadEvent event)
{
try
{
FacesContext fc = FacesContext.getCurrentInstance();
UploadedFile arq = event.getFile();
InputStream in = new BufferedInputStream(arq.getInputstream());
File dir = new File(fc.getExternalContext().getRealPath("/resources/pacotesVersao") + "/Versao_" + this.versaoSelecionada.getCodigo());
dir.mkdir();
File file = new File(fc.getExternalContext().getRealPath("/resources/pacotesVersao") + "/Versao_" + this.versaoSelecionada.getCodigo() + "/" + arq.getFileName());
System.out.println(file.getAbsolutePath());
FileOutputStream fout = new FileOutputStream(file);
while (in.available() != 0)
{
fout.write(in.read());
}
fout.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
Componente:
<ui:composition>
<ui:fragment>
<p:dialog widgetVar="dlgUploadPacotes" resizable="false"
id="dialogUploadPacotes" width="850" height="400" closable="true"
draggable="false" style="font-size:15px" modal="true"
appendToBody="true">
<h:form enctype="multipart/form-data" id="formUpload">
<p:fileUpload label="Procurar" multiple="true" cancelLabel="Limpar"
id="enviaProjeto" description="Projetos" sizeLimit="9999999"
fileUploadListener="#{ManterVersaoListarBean.fileUpoload}" />
</h:form>
</p:dialog>
</ui:fragment>
</ui:composition>
Web XML:
<filter>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<filter-class>org.primefaces.webapp.filter.FileUploadFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
Desde já obrigado pelas ajudas!