Artigo WebMobile 19 - Efetuando Upload de Arquivos com JSF e MyFaces
Primeiro explicaremos como o upload de arquivos funciona, mostrando aos leitores o código fonte do MyFaces e Commons File Upload, em seguinda, veremos uma aplicação de exemplo que permite ao usuário fazer upload de arquivos usando seus navegadores.
Java Web
Efetuando Upload de Arquivos com JSF e MyFaces
Andrei Cioroianu
Browsers web provêm uma forma simples para envio de arquivos para aplicações web, mas as versões atuais dos padrões Java web (servlets, JSP e JSF) não oferecem qualquer ajuda. Felizmente, existem outros tipos de framework, tais como Apache Commons File Upload, Apache MyFaces e Oracle ADF Faces, que implementam esta funcionalidade, fornecendo simples APIs e tags customizadas. A primeira metade deste artigo explica como o upload de arquivos funciona, mostrando aos leitores o código fonte do MyFaces e Commons File Upload. Isso é útil para se conhecer o que acontece internamente nesses frameworks de código aberto para usá-los eficientemente e estar apto para modificá-los se necessário. Na segunda metade deste artigo, encontraremos uma aplicação de exemplo que permite ao usuário fazer upload de arquivos usando seus browsers web.
Upload de Arquivo baseado na Web
O termo "upload" é algo utilizado
Existe alguma sobreposição entre esses dois significados, porque um webmaster pode usar uma interface baseada na web para publicar arquivos (páginas, imagens, scripts, etc.). Companhias que hospedam web sites pessoais gratuitamente, tais como Yahoo, implementa o upload de arquivo baseado na web para permitir que pessoas publiquem suas páginas. Isso permite que qualquer pessoa com um browser web e acesso a Internet publique um website pequeno. No entanto, existem muitas formas melhores para publicar seu conteúdo web, tais como FTP ou FTP seguro. Neste caso, você usaria uma aplicação dedicada, tais como um cliente FTP, ao invés de seu browser web para fazer upload de seu conteúdo para o servidor web.
Este artigo discute upload de arquivo a partir do ponto de vista do desenvolver web. Por exemplo, uma aplicação de e-mail baseada na web, tal como Yahoo mail, implementa upload de arquivo de forma que os usuários possam enviar mensagens com anexos. Outro bom exemplo é um website de emprego que permite que você envie seu currículo para ser consultado. A aplicação de exemplo deste artigo computa os valores dos arquivos que fizeram upload. Você pode fazer qualquer coisa que você desejar com os arquivos carregados na aplicação, tais como armazenar seu conteúdo num banco de dados ou enviá-lo como anexo em um e-mail. Agora, vamos ver como implementar o upload de arquivos em uma aplicação web.
Um formulário HTML pode conter um ou mais elementos que o browser renderiza como campos de entrada, onde usuários podem entrar com caminhos de arquivo. Próximo a cada campo de entrada de arquivo, o browser web adiciona um botão que abre uma caixa de diálogo de arquivo, permitindo aos usuários selecionar um arquivo ao invés de entrar com o caminho (ver Figura 1).
Figura 1. Formulário web contendo um campo de entrada de arquivo
Quando o usuário clica no botão Submit do formulário, o browser web codifica os dados do formulário, que inclui o conteúdo do arquivo selecionado junto com seu nome (ou caminho) e outros parâmetros do formulário. Então, o browser envia os dados do formulário codificado para o servidor web, que passa esses dados ao script especificado como atributo de ação da tag . Se você desenvolve uma aplicação web em Java, o script de ação pode ser um servlet ou uma página JSP.
Visto que a codificação padrão dos dados do formulário e o método GET padrão não são adequados para " [...] continue lendo...
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo