<input type=“file”>
qual seria o correspondente em JSF? existe alguma tag que ja gerencia esse upload e que facilite minha vida?
desde já agradeço.
Socorro [erro] upload de arquivo em jsf
10 Respostas
<input type=“file”>
qual seria o correspondente em JSF? existe alguma tag que ja gerencia esse upload e que facilite minha vida?
desde já agradeço.
Use o inputFileUpload do tomahawk.
O myfaces-example-simple que é disponibilizado pelo mesmo pessoal do myfaces tem um exemplo de como usar esse componente.
valeu ae, vou ver o exemplo e tentar utilizá-lo… :lol:
opa, hehehe…
olhei la o inputFileUpload, na api diz que existe um exempo em “examples/web/fileupload.jsp” mas nao consegui acessar…
onde pego esse myfaces-example-simple?
ae… estou tento do seguinte erro:
exception
javax.servlet.ServletException: Filter execution threw an exception
root cause
java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileUpload
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:114)
eu estou tentando usar o inputFileUpload recomendado pelo Hempx. peguei o myfaces-example-simple e dei uma olhada lá. No exemplo tem alguns fitlros colocados no web.xml que eu copiei e adicionei no meu web.xml para poder usar o inputFileUpload. só que como podem ver está me retornando um erro. ja chequei se tenho todas as libs necessárias e sim, está tudo lá. não sei como resolver esse problema, alguem podia me dar uma mão?
na referência http://myfaces.apache.org/tomahawk/tlddoc/t/inputFileUpload.html , fala para habilitar o filtro multipart será que não habilitei esse filtro corretamente?
olá pessoal, eu estou tendo dificuldades com o upload de arquivo usando essa tag do tomahawk <t:inputFileUpload>
eu segui um tutorial http://www.onjava.com/pub/a/onjava/2005/07/13/jsfupload.html apenas trocando o myfaces-common pelo tomahawk…
só que aqui pra mim nao funcionou, configurei o web.xml com os filtros apresentados no tutorial, criei um uploadBean so de teste contendo:
import org.apache.myfaces.custom.fileupload.UploadedFile;
public class UploadBean {
private UploadedFile arquivo;
private String nomeArquivo;
private long tamanhoArquivo;
public String getNomeArquivo() {
return nomeArquivo;
}
public void setNomeArquivo(String nomeArquivo) {
this.nomeArquivo = nomeArquivo;
}
public long getTamanhoArquivo() {
return tamanhoArquivo;
}
public void setTamanhoArquivo(long tamanhoArquivo) {
this.tamanhoArquivo = tamanhoArquivo;
}
public UploadedFile getArquivo() {
return arquivo;
}
public void setArquivo(UploadedFile arquivo) {
this.arquivo = arquivo;
}
public String mostrarArquivo() {
setNomeArquivo(arquivo.getName());
setTamanhoArquivo(arquivo.getSize());
return null;
}
}
E meu jsf ficou assim:
<f:view>
<h:form enctype="multipart/form-data">
<h:outputLabel value="Arquivo: " for="arquivo" />
<t:inputFileUpload id="arquivo"
value="#{uploadBean.arquivo}"
storage="file"
required="true" />
<br />
<h:commandButton action="#{uploadBean.mostrarArquivo}" value="Enviar" />
<br />
<h:outputText value="Nome: " /><h:outputText value="#{uploadBean.nomeArquivo}" /><br />
<h:outputText value="Tamanho: " /><h:outputText value="#{uploadBean.tamanhoArquivo}" />
</h:form>
</f:view>
O que acontece eh que depois que eu clico em enviar o nome e o tamanho do arquivo nao aparecem… estou usando o escopo de request para o bean… será que alguem sabe me ajudar, alguem que ja mexeu com isso? Estou com uma certa urgencia em relação a isso!!!
Valeu!
ae… estou tento do seguinte erro:exception javax.servlet.ServletException: Filter execution threw an exception root cause java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileUpload org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:114)eu estou tentando usar o inputFileUpload recomendado pelo Hempx. peguei o myfaces-example-simple e dei uma olhada lá. No exemplo tem alguns fitlros colocados no web.xml que eu copiei e adicionei no meu web.xml para poder usar o inputFileUpload. só que como podem ver está me retornando um erro. ja chequei se tenho todas as libs necessárias e sim, está tudo lá. não sei como resolver esse problema, alguem podia me dar uma mão?
na referência http://myfaces.apache.org/tomahawk/tlddoc/t/inputFileUpload.html , fala para habilitar o filtro multipart será que não habilitei esse filtro corretamente?
este erro é só por que tu esqueceu de colocar o commons-fileupload e o commons-io no classpath
Passei por isto ontem 
esqueci de mencionar, mas esse erro eu ja havia solucionado.
o problema agora eh que eu escolho o arquivo que quero enviar, envio, mas parece que o managed bean que eu criei nao consegue tratar ele, pq não tenho nada de retorno na minha página!
Opa bom dia!
vc chegou a configurar o web.xml ?
parece que faltou isso mano:
<!-- Extensions Filter -->
<filter>
<filter-name>extensionsFilter</filter-name>
<filter-class>
org.apache.myfaces.component.html.util.ExtensionsFilter
</filter-class>
<init-param>
<param-name>uploadMaxFileSize</param-name>
<param-value>100m</param-value>
</init-param>
<init-param>
<param-name>uploadThresholdSize</param-name>
<param-value>100k</param-value>
</init-param>
<!-- <init-param>
<param-name>uploadRepositoryPath</param-name>
<param-value>/temp</param-value>
<description>Set the path where the intermediary files will be stored.
</description>
</init-param>-->
</filter>
abs
ae… estou tento do seguinte erro:exception javax.servlet.ServletException: Filter execution threw an exception root cause java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileUpload org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:114)eu estou tentando usar o inputFileUpload recomendado pelo Hempx. peguei o myfaces-example-simple e dei uma olhada lá. No exemplo tem alguns fitlros colocados no web.xml que eu copiei e adicionei no meu web.xml para poder usar o inputFileUpload. só que como podem ver está me retornando um erro. ja chequei se tenho todas as libs necessárias e sim, está tudo lá. não sei como resolver esse problema, alguem podia me dar uma mão?
na referência http://myfaces.apache.org/tomahawk/tlddoc/t/inputFileUpload.html , fala para habilitar o filtro multipart será que não habilitei esse filtro corretamente?
este erro é só por que tu esqueceu de colocar o commons-fileupload e o commons-io no classpath![]()
Passei por isto ontem :D
Onde eu consigo esses jars pois baixei o myfaces e o tomahawk coloquei no classpath da aplicacao e nao resolve o problema.