Primefaces fileupload

3 respostas
C

[i]Galera to com um problema aqui com o componente fileupload do primefaces.

O caso é o seguinte, ao fazer os testes com o chrome, firefox ele funciona como deveria.
Porém ao testar no IE e tentar pegar apenas o nome do arquivo que foi upado ele vem com o caminho completo do arquivo.

Estou fazendo da seguinte forma:[/i]

<h:form enctype="multipart/form-data">
					<h:outputLabel id="lbFoto" for="fuFoto" value="Foto:"
						style="font-weight: bold; float: right;" />
					<p:fileUpload id="fuFoto" cancelLabel="Cancelar"
						fileUploadListener="#{mbItem.handleFileUpload}"
						allowTypes="/(\.|\/)(jpe?g|png)$/" auto="true"
						invalidFileMessage="Formato de arquivo invalido." label="Escolher"
						uploadLabel="Enviar" update="msgs" immediate="true"
						mode="advanced" />
		</h:form>

E no bean eu tenho o seguinte método:

public void handleFileUpload(FileUploadEvent event) {
		UploadedFile uploadedFile = event.getFile();

		foto = uploadedFile.getContents();
		fileName = uploadedFile.getFileName();
		fileSize = uploadedFile.getSize();

		System.out.println("Filename: " + fileName);
	}

No sysout eu recebo o seguinte caminho:

Filename: C:\Users\Trabalho\Pictures\teste.png

[i]Eu recebo o caminho completo e não apenas o nome do arquivo que é o que eu preciso.

Alguem ja passou por isso e conseguiu resolver?

Estou utilizando JSF 2 e primefaces 3.0…

Obrigado.[/i]

3 Respostas

vinnysoft

Olá c0nf1ck.

Qual a versão do commons-io.jar e do commons-fileupload.jar vc ta usando?

Na documentação do PrimeFaces pede pra vc usar as libs o fileupload na versão 1.2.1 e o commons-io na versão 1.4 (apesar de dizer que pode funcionar com versões mais novas, porém não foi testado).

E já tentou migrar pro primefaces 3.3.1?

Como está o seu mapeamento do filtro do FileUpload no web.xml? Acredito que deva ser algo do tipo:

<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>

Até +!

J

Alguém Poderia Ajudar eu estou com o mesmo problema.

J

Você conseguiu resolver o problema?

Tá acontecendo o mesmo comigo. Alguém pode ajudar?
Grato.

Criado 23 de julho de 2012
Ultima resposta 6 de ago. de 2012
Respostas 3
Participantes 3