Eaeeeee pessoallll!!!
Nossa tive problema com esse negócio ai… fiquei semanas para conseguir resolver…
desisti…e qdo resolvi voltar resolvi em algumas horas… acho que foi pq refresquei a cabeça e soube pesquisar melhor!
Vamos la!!! vou postar as configurações e vocês tentam ai!!
Primeiro eu estou utilizando a versão 3.0 do Primefaces, mas acho que a 3.0.1 e a 3.1 funcionam normalmente!
Vamos configurar o web.xml
Adicionem o seguinte código.
<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>
Depois vocês precisam utilizar as bibliotecas
commons.fileupload-1.2.2.jar
site: http://commons.apache.org/fileupload/download_fileupload.cgi
commons.io-2.1.jar
site: http://commons.apache.org/io/download_io.cgi
Em seguida aqui está o código que eu uso na minha página XHTML, no meu caso eu só estou utilizando arquivos “PDF” e “DOC”, chamando o método carregaArquivo na minha classe EmpresaBean.
<h:panelGroup>
<p:fileUpload fileUploadListener="#{empresaBean.carregaArquivo}"
mode="advanced"
update="messages"
sizeLimit="100000"
allowTypes="/(\.|\/)(doc|pdf)$/" id="arquivo">
<p:growl id="messages" showDetail="true"/>
</p:fileUpload>
</h:panelGroup>
Agora a minha classe Bean.
public void carregaArquivo(FileUploadEvent event) throws IOException {
this.arquivo = event.getFile();
FacesContext ctx = FacesContext.getCurrentInstance();
FacesMessage msg = new FacesMessage();
msg.setSummary("Arquivo anexado com sucesso.");
msg.setSeverity(FacesMessage.SEVERITY_INFO);
ctx.addMessage("mensagens", msg);
}
Boa sorte pessoal!
Espero que ajudem vocês.