JSF FileUpload

E ai, pessoal.

Não consigo encontrar solução, nem alguém com o mesmo problema que eu.
Estou utilizando o componente do FileUpload em JSF, utilizando a biblioteca primefaces-3.4.2.jar
Quando utilizava o componente se o atributo auto, na primeira vez que a página era carregada o componente não aparecia. Eu precisava recarregar o navegador para que o componente aparecesse.
Acrescentei o atributo auto e o componente começou a aparecer sempre, no entanto, na primeira vez que utilizo o componente, ele não faz nada (não chama o método que passei). A partir do segundo arquivo que eu faço upload o componente funciona normalmente.

Alguém tem alguma sugestão de como corrigir esse problema (se tiver como)?

Obrigada.

Poste o código… Assim posso te ajudar…

Na minha página xhtml uso:

<fieldset>
<legend class=“simples”>
<h:outputText value=“Importar arquivos de períodos e eventos” style=“margin-left:15px;” />
</legend>

&lt;hr /&gt;

&lt;h:form id="formImportarPeriodo"&gt;
	&lt;p:growl id="message" sticky="false" life="10000" /&gt;
	&lt;h:outputText value="Selecione um arquivo (.txt) para importar:" style="font-size:1.1em;" /&gt;
	&lt;p:fileUpload fileUploadListener="#{importacaoBean.validarImportacaoPeriodo}" mode="advanced" dragDropSupport="false" auto="true"  
             				  update=":formImportarPeriodo:message" sizeLimit="900000000" fileLimit="1" allowTypes="/(\.|\/)(txt)$/"
             				  style="margin-top:10px;" /&gt;  
&lt;/h:form&gt;	

</fieldset>

no Bean:

public void validarImportacaoPeriodo(FileUploadEvent event){
String nomeArquivo = event.getFile().getFileName();
//verifica nome do arquivo
if(!nomeArquivo.contains("-PER") && !nomeArquivo.contains("-EVE")){
//arquivo não é de período nem de evento
FacesMessage msg = new FacesMessage(“Não é possível importar arquivos que não sejam de períodos ou eventos”);
FacesContext.getCurrentInstance().addMessage(null, msg);
}
else{
//arquivo de período ou evento. Chama método de importação
importarArquivo(event);
}
}

e no 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>
<url-pattern>*.jsf</url-pattern>
</filter-mapping>

Adicionei também as bibliotecas commons-fileupload-1.3 e commons-io-2.4

É um problema parecido com o deste outro tópico? Veja se o que está descrito aí te ajuda.

Obs: sempre use as tags Code para postar códigos. Facilita a leitura :wink:

Na verdade o upload funciona. O problema é que logo da primeira vez que eu chamo não funciona.
Antes de eu utilizar o auto quando eu carregava a página, o componente não aparecia. Quando eu recarregava a página o componente aparecia.
Mudei o componente acrescentando o auto e o componente agora aparece. Mas a primeira vez que eu utilizo o FileUpload ele não faz nada.
A partir da segunda vez ele começa a funcionar normalmente.

Queria saber se isso é um problema do componente ou algum erro meu. Além disso, como eu posso fazer para que esse erro, caso seja do componente, não fique visível para o usuário, pois pode dar a falsa impressão de que a importação funcionou sem ter executado nada.

Dei uma olhada no tópico mas não me ajudou. =/