Limpar campos do formulário em JSP

3 respostas
Thiago_Siqueira

Pessoal, ja estou com essa dúvida a algum tempo e não estou conseguindo resolver.
Tenho um formulário JSP

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<f:view>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>..:: Cadastro Pessoa Física ::..</title>
            <link rel="StyleSheet" type="text/css" href="CSS/estilos.css" media="screen" >
        </head>

        <body>
            <div id="tudo">
                <div id="conteudo">
                    <h:form>
                        <img src="logoagro.png"/>
                        <font color="#32CD32"><h3><b>Cadastro de Pessoa Física:</b></h3></font>
                        <h:outputLink value="buscar.jsf">
                            <img src = "pesquisar2.png" alt = "Pesquisar" border = "0" width = "150" heigth = "75"/>
                        </h:outputLink>
                        <table>
                            <tr>
                                <td colspan="6"><b>Dados Gerais _______________________________________________</b></td>
                            </tr>
                            <tr>
                                <td>Nome:</td>
                                <td>
                                    <h:inputText id="nome" styleClass="Gradient" required="true" maxlength="50"  value="#{cadastro.nome}" requiredMessage="Por favor informe o nome."/>
                                </td>
                                <td colspan ="5"><h:message for="nome" errorClass="erros"/></td>

                            </tr>
                            <br/>
                            <tr>
                                <td>CPF:</td>
                                <td>
                                    <h:inputText id = "cpf" required="true" styleClass="Gradient" maxlength="11" value="#{cadastro.cpf}" requiredMessage="Por favor informe o CPF."><f:validateLength maximum="11" minimum="11"/>
                                    </h:inputText>
                                </td>
                                <td colspan ="5"><h:message for="cpf" errorClass="erros"/></td>
                            </tr>
                            <tr>
                                <td colspan="5"><b>Endereço ___________________________________________________</b></td>
                            </tr>
                            <tr>
                                <td>Rua:</td>
                                <td>
                                    <h:inputText id = "rua" required="true" styleClass="Gradient" maxlength="50" value = "#{cadastro.rua}" requiredMessage="Por favor informe a Rua e o Nº."/>
                                </td>

                                <td>Nº:</td>
                                <td>
                                    <h:inputText id = "numero" required="true" styleClass="Gradient" value = "#{cadastro.numero}"/>
                                </td>
                                <td colspan ="5"><h:message for="rua" errorClass="erros"/><h:message for="numero" errorClass="erros"/></td>
                            </tr>
                            <tr>
                                <td>Complemento:</td>
                                <td>
                                    <h:inputText id = "complemento" styleClass="Gradient" maxlength="100" value = "#{cadastro.complemento}"/>
                                </td>
                            </tr>
                            <tr>
                                <td>Bairro:</td>
                                <td>
                                    <h:inputText id = "bairro" required="true" styleClass="Gradient" maxlength="50" value ="#{cadastro.bairro}" requiredMessage="Por favor informe o Bairro." />
                                </td>
                                <td colspan ="5"><h:message for="bairro" errorClass="erros"/></td>
                            </tr>
                            <tr>
                                <td>CEP:</td>
                                <td>
                                    <h:inputText id = "cep" required="true" styleClass="Gradient" maxlength="8" value = "#{cadastro.cep}" requiredMessage="Por favor informe o CEP."/>
                                </td>
                                <td colspan ="5"><h:message for="cep" errorClass="erros"/></td>
                            </tr>
                            <tr>
                                <td>Estado:</td>
                                <td>
                                    <h:inputText id = "estado" required="true" styleClass="Gradient" maxlength="40" value = "#{cadastro.estado}" requiredMessage="Por favor informe o Estado."/>
                                </td>
                                <td colspan ="5"><h:message for="estado" errorClass="erros"/></td>
                            </tr>
                            <tr>
                                <td>Cidade:</td>
                                <td>
                                    <h:inputText id = "cidade" required="true" styleClass="Gradient" maxlength="100" value = "#{cadastro.cidade}" requiredMessage="Por favor informe a Cidade."/>
                                </td>
                                <td colspan ="5"><h:message for="cidade" errorClass="erros"/></td>
                            </tr>
                            <tr>
                                <td colspan="5"><b>Contato ____________________________________________________</b></td>
                            </tr>
                            <tr>
                                <td>Telefone:</td>
                                <td>
                                    <h:inputText id = "telefone" required="true" styleClass="Gradient" maxlength="10" value = "#{cadastro.telefone}" requiredMessage="Por favor informe o Telefone."/>
                                </td>
                                <td colspan ="5"><h:message for="telefone" errorClass="erros"/></td>
                            </tr>
                            <tr>
                                <td>E-mail:</td>
                                <td>
                                    <h:inputText id = "email" required="true" styleClass="Gradient" maxlength="50" value = "#{cadastro.email}" requiredMessage="Por favor informe o E-mail."/>
                                </td>
                                <td colspan ="5"><h:message for="email" errorClass="erros"/></td>
                            </tr>
                            <tr>
                                <td colspan="5">
                                    <center>
                                        <h:commandButton styleClass="botaoSalvar"  value="Inserir" action="#{cadastro.inserir}"/>
                                    </center>
                                </td>
                            </tr>
                        </table>
                    </h:form>
                </div>
            </div>
        </body>
    </html>
</f:view>
E a classe FisicaBD
public class FisicaBD
{
    private String nome = blank;
    private String cpf = blank;
    private String numero = blank;
    private String rua = blank;
    private String cidade = blank;
    private String complemento = blank;
    private String estado = blank;
    private String email = blank;
    private String cep = blank;
    private String telefone = blank;
    private String bairro = blank;
    private String result_busca = blank;
    private String result_inserir = blank;
    static Connection con = null;
    static Statement stm = null;
    static ResultSet rs;
    static private String blank = "";
    public static final String SUCESSO_INSERCAO = "success";
    public static final String FALHA_INSERCAO = "failure";
    public static final String BUSCA_INVALIDA = "failure";
    public static final String BUSCA_VALIDA = "success";

    public FisicaBD() {
        if (con == null) {
            try {
                Class.forName("com.mysql.jdbc.Driver");
                con = DriverManager.getConnection("jdbc:mysql://localhost/BDCadastro", "root", "thiago");
            } catch (SQLException e) {
                System.err.println("Erro: " + e);
                con = null;
            } catch (ClassNotFoundException e) {
                System.out.println("ClassNotFound...");
                e.printStackTrace();
            }
        }
    }
 //Métodos Getters e Setters (Eu os tirei para não alongar o post)
    public String inserir() {
        
        String result_inserir = FALHA_INSERCAO;
        int mt = 1;
        if (complemento == "")
        {
            complemento = "Sem Complemento";
        }
                        try
                        {
                            stm = con.createStatement();
                            stm.execute("INSERT INTO TBFisica (Nome,Cpf,Rua,Numero, Complemento, Bairro, Cep, Estado, Cidade, Telefone, Email) VALUES ('" + nome + "','" + cpf + "','" + rua + "','" + numero + "', '" + complemento + "', '" + bairro + "', '" + cep + "', '" + estado + "', '" + cidade + "', '" + telefone + "', '" + email + "')");
                            stm.close();
                            result_inserir = SUCESSO_INSERCAO;
                            mt = 0;
                        }
                        catch (SQLException e)
                        {
                            System.err.println("Erro: " + e);
                            mt = 0;
                            result_inserir = FALHA_INSERCAO;
                        }
                        nome = blank;
                        cpf = blank;
                        numero = blank;
                        rua = blank;
                        cidade = blank;
                        complemento = blank;
                        estado = blank;
                        email = blank;
                        cep = blank;
                        telefone = blank;
                        bairro = blank;
        return result_inserir;
    }

    public String buscar() throws SQLException {
        String result_busca = BUSCA_INVALIDA;
        nome = blank;
        cpf = blank;
        numero = blank;
        rua = blank;
        cidade = blank;
        complemento = blank;
        estado = blank;
        email = blank;
        cep = blank;
        telefone = blank;
        bairro = blank;
        try {
            stm = con.createStatement();
            rs = stm.executeQuery("SELECT * FROM TBFisica WHERE Nome like '%" + nome + "%'");
            if (rs.next()) {
                nome = rs.getString(2);
                cpf = rs.getString(3);
                rua = rs.getString(4);
                numero = rs.getString(5);
                complemento = rs.getString(6);
                bairro = rs.getString(7);
                cep = rs.getString(8);
                estado = rs.getString(9);
                cidade = rs.getString(10);
                telefone = rs.getString(11);
                email = rs.getString(12);

                result_busca = BUSCA_VALIDA;
            } else {
                result_busca = BUSCA_INVALIDA;
            }
            rs.close();
            stm.close();
        } catch (SQLException e) {
            System.err.println("Erro: " + e);
        }

        return result_busca;
    }
}

Quando clico no botão inserir, ele direciona a uma outra pagina escrito "Dados inseridos com Sucesso", e nesse pagina um link para voltar...
Quando volto na pagina de cadastro, todos os dados estão nos respectivos campos...
Como faço para limpar esses campos?

Obrigado pela cooperação

3 Respostas

idev4web

o seu botao voltar deve ser do tipo que volta no historico sem gerar uma nova requisicao

tente fazer seu botao voltar gerar uma nova requisicao

Thiago_Siqueira

Como faço o botão, ou link no caso, gerar uma nova requisição?
Até achei algo sobre isso na internet, mas não entendi nada :S
Obrigado

idev4web

se vc esta usando JSF

entao vc pode dar um new no objeto apos fazer a operação

ex: apos salvar o objeto Pessoa p

de faça p = new Pessoa();

Criado 30 de julho de 2010
Ultima resposta 2 de ago. de 2010
Respostas 3
Participantes 2