Fundamentos de Servlets com formulários HTML

Introdução

Vimos no artigo anterior que Servlets e JSP são suas tecnologias desenvolvidas pela Sun Microsystem para desenvolvimento de aplicações Web a partir de componentes Java que executam no lado servidor. Essas duas tecnologias fazem parte da plataforma J2EE que fornece um conjunto de tecnologias para o desenvolvimento de soluções escaláveis e robustas para a Web. Nesta aula daremos continuidade na utilização dos Servlets, para isso iremos aprender um pouco sobre os formulários HTML e iremos construir uma aplicação no NetBeans.

 

Servlets e Formulários HTML

As informações digitadas em um formulário HTML chegam até o Servlet por meio do objeto HttpServletRequest e são recuperadas por meio do método getParameter() deste objeto. Todo item de um formulário HTML possui um campo “NAME” e esse campo “NAME” é passado como argumento para o método getParameter() que retorna na forma de String o valor do formulário.

 

Desenvolvendo uma aplicação no NetBeans IDE 5.0 utilizando Servlets e Formulários HTML

Abra o NetBeans IDE e crie um novo projeto “Web”. (“File” à “New Project...”), na janela “New Project” marque a opção “Web” e em seguida “Web Application”, clique no botão “Next”. Na janela “New Web Application”, coloque o nome do projeto como “Cadastro”, e clique no botão “Finish”. A tela do NetBeans deve ter ficado semelhante a tela abaixo:


fundserv2fig01.JPG
Figura 1
: Tela do NetBeans com o projeto Cadastro aberta.

 

Apague todo o conteúdo do arquivo “index.jsp”, e digite o código da listagem 1, na área de trabalho do arquivo “index.jsp”, figura abaixo:

fundserv2fig02.JPG
Figura 2:
Área de trabalho do arquivo “index.jsp”.
 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>Cadastro Alunos
[Versão 0.001]</title></head>
<body><font face="arial"><center><table><tr><td><h1>Cadastro de Alunos</h1></td></tr></table><br></center><center><form><table><tr><td align="center" width="122"><b>Matricula:</b></td><td align="left"><input type="text" name="matricula" size="10"
maxlength="10"></td></tr><tr><td align="center" width="122"><b>Nome:</b></td><td align="left"><input type="text" name="nome" size="40"
maxlength="40">
</td>
</tr><tr><td align="center" width="122"><b>Idade: </b> </td><td align="left"><input type="text" name="idade" size="5"
maxlength="2">
</td>
</tr><tr><td align="left" width="122"><p align="center">&nbsp;</td><td align="left"><p align="center"><input type="submit" value="Enviar"><input type="reset"
value="Limpar">
</td>
</tr></table></center></form></font></body></html>

Listagem 1: Código HTML para ser digitado dentro da área de trabalho do arquivo “index.jsp”.

Salve as alterações no arquivo “Fileà Salve” e execute a sua aplicação “RunàRun Main Project”, a tela do seu navegador deve ter ficado igual a figura abaixo:


fundserv2fig03.JPG
Figura 3:
Tela do navegador (Mozilla Firefox) com a página “index.jsp”.

 

Agora pare a aplicação, clique na janela de apoio “Bundled Tomcat” e clique no botão “Stop the Server”.

fundserv2fig04.JPG

Figura 4: Janela de apoio “Bundled Tomcat”.

 

Agora crie um arquivo “Servlet”, (clique inverso no nome do projeto “Cadastro”, no meu que aparece escolha a opção “New”, sub-opção “Servlet”), na janela “New Servlet”, em “Class Name” coloque SvCadastro e em Package coloque “org.classe”, conforme a figura abaixo:


fundserv2fig05.JPG
Figura 5:
Janela New Servlet.

Clique no botão “Next”, não faça nenhuma alteração na janela “New File”, abaixo e clique no botão “Finish”.

fundserv2fig06.JPG

Figura 6: Janela New File.

 

A tela do NetBeans deve ter ficado da seguinte forma, figura abaixo:

fundserv2fig07.JPG

Figura 7: Área de trabalho do NetBeans com o arquivo SvCadastro.java.

Procure pelo seguinte trecho no arquivo SvCadastro.java, figura abaixo, e altere com o código da Listagem 2.

fundserv2fig08.JPG
Figura 8
: Trecho do arquivo SvCadastro.java que vai ser alterado, pelo código da Listagem 2.

 

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)

    throws ServletException, IOException {

        response.setContentType("text/html;charset=UTF-8");

        PrintWriter out = response.getWriter();

       

        String matricula = request.getParameter("matricula");

        String nome = request.getParameter("nome");

        String idade = request.getParameter("idade");

       

        String msg = "<br>O aluno " + nome + " de matricula " + matricula + " com " + idade + " anos de idade.<br>";

       

        out.println("<html>");

        out.println("<head>");

        out.println("<title>Servlet SvCadastro</title>");

        out.println("</head>");

        out.println("<body><center>");

        out.println("<h1>Informação do cadastro</h1><br><br><hr>");

        out.println(msg);

        out.println("Foi cadastrado com sucesso, no sistema!!!!<br><hr><br>");

        out.println("<a href='index.jsp'>Voltar</a>");

        out.println("</center></body>");

        out.println("</html>");

       

        out.close();

    }

Listagem 2: Novo código para o trecho acima.

 

Altere a seguinte linha no arquivo “index.jsp”

 

<form>

Para

<form method="get" action="SvCadastro">

 

Salve as alterações no arquivo “Fileà Salve” e execute a sua aplicação “RunàRun Main Project”, a tela do seu navegador deve ter ficado igual a figura abaixo:

 

fundserv2fig09.JPG
Figura 9:
Navegador com a página “index.jsp” carregada.

Agora informa uma matricula, por exemplo “9916123”, um nome, por exemplo “Fulano da Silva”, e uma idade, por exemplo “25”, e clique no botão “Enviar”, sua tela irá ficar igual a figura abaixo.

fundserv2fig10.JPG

Figura 10: Tela do navegador com o resultado do cadastro, código gerado pelo SvCadastro.

Clique no botão “Voltar” para fazer novos cadastros.