Upload de arquivo

Tudo Bom? Espero Que sim!!!

Seguinte estou “tentando” desenvolver uma aplicação Java Web que gerencia finanças pessoais(Só para aprender mesmo).
minha aplicação é bem simples, mas como estou começando agora to meio perdido.

Quero criar uma rotina para importar lançamentos de arquivos textos, criando um Botão SELECIONAR ARQUIVO, que quando o usuário clicar abra uma janela como a JFileChooser(Como é uma aplicação Web acho que não tem como usar swing.) para que o usuario possa selecionar um arquivo txt em uma pasta qualquer do seu computador.

Alguém sabe como faço isso???

Obrigado.

Já tentou criar um input do tipo file? por padrão eles usam o software de escolha de arquivo do sistema operacional,não precissa criar nada.

input do tipo file dá certo, mas o que ele me gera uma propriedade String com o caminho completo??? ou um arquivo???

Deixa eu explicar melhor como chamar o seguinte método atraves de um input do tipo file e qual a forma correta de escreve-lo:

[code]public static void importarTxt(File file) throws FileNotFoundException, IOException{

    FileReader filereader = null;
       
        // TODO code application logic here
        filereader = new FileReader(file);
        BufferedReader bf = new BufferedReader(filereader);
        String linha = null; [code]

ou:

[/code]public static void importarTxt(String arquivo) throws FileNotFoundException, IOException{

    FileReader filereader = null;
        File file = new File(arquivo);
        // TODO code application logic here
        filereader = new FileReader(file);
        BufferedReader bf = new BufferedReader(filereader);
        String linha = null; [code]

Obrigado.

O Que preciso é fazer upload de um Arquivo txt e passar ele para um método que vai fazer a leitura, achei alguns exemplos na internet, mas não consegui implementar.
por favor se alguém já fez ou sabe como fazer isso e poder postar um código simples e como usa-lo seria de grande ajuda.

Obrigado.

Vou te passar um tutorial que fiz de upload de arquivo com JSF para banco de dados, será uma boa referencia, eu ACHO.

http://www.guj.com.br/java/304872-tutorial-upload-e-download-com-o-jsf

Consegui emplementar o seguinte código que localizei em um tutorial na internet (http://diogodmoreira.com/blog/upload-de-arquivos-com-servlets/)
mas ele retorna uma lista do tipo object, e eu preciso de um Tipo “File” do java.io, para chamar o meu método que devera executar a leitura do .txt.
tem como eu fazer upload do tipo File??? ou converter esta lista do tipo Object??? se tiver como postar um pequeno exemplo de como fazer isso. Como disse sou novato em java, e estou tendo um pouco de dificuldade em implementar e compreender este método.
Muito obrigado pela atenção e desculpem qualquer coisa.

Formulário:

[code]
Exemplo Upload

Selecione a foto:
[/code]

Servlet:

[code]@WebServlet(name=“RecebeUpload”,urlPatterns={"/RecebeUpload"})
public class RecebeUpload extends HttpServlet {

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    FileItemFactory factory = new DiskFileItemFactory();
    ServletFileUpload upload = new ServletFileUpload(factory);
    List items = null;
    try {
        items = upload.parseRequest(request);
    } catch (FileUploadException ex) {
        // Tratamento de exceção
    }
    Iterator iter = items.iterator();
    while (iter.hasNext()) {
        FileItem item = (FileItem) iter.next();
        if (item.isFormField()) {
        } else {
            byte[] arquivo = item.get();
            request.setAttribute("content", item.getContentType());
            request.setAttribute("size", item.getSize());
            request.getRequestDispatcher("exibearquivo.jsp").
                forward(request, response);
        }
    }
}

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
}

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
}

}[/code]

Exibe as informações do arquivo

[code]
Exemplo Upload

Arquivo recebido!

Tipo de conteúdo:
${content}

Tamanho:
${size}
[/code]

Gente é possível fazer isso???