Boa noite!! Estou prestes a entregar um trabalho na faculdade e preciso de ajuda!! O que eu tenho que fazer pra isso funcionar??? Quero validar os campos do formulário…isso até acontece, mas insere mesmo assim…
<%@page import="javax.swing.JOptionPane"%>
<%@page import="java.text.DateFormat"%>
<%@page import="entidades.Contas"%>
<%@page import="java.util.ArrayList"%>
<%@page import="javax.persistence.Query"%>
<%@page import="javax.persistence.EntityManager"%>
<%@page import="util.HibernateUtil"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<script type="text/javascript">
function validaCampo()
{
d = document.formulario;
if(d.descricao.value=="" || d.descricao.value=="null")
{
alert("O Campo descricao é obrigatório!");
return false;
}
else
if(d.valor.value=="")
{
alert("O Campo Valor é obrigatório!");
return false;
}
else
if(d.dt_lancamento.value=="")
{
alert("O Campo Data de Lançamento é obrigatório!");
return false;
}
if(d.dt_lancamemnto.value == "" ||
d.dt_lancamemnto.value.indexOf('dd/mm/aaaa')==-1 ) {
alert("O campo deve conter uma data!");
d.dt_lancamemnto.focus();
return false;
}
if(d.tipo.value=="")
{
alert("O Campo Tipo é obrigatório!");
return false;
}
else
return true;
}
<!-- Fim do JavaScript que validará os campos obrigatórios! -->
</script>
<%
EntityManager manager = HibernateUtil.getManager();
Contas contas = new Contas();
if (request.getParameter("id") != null) {
contas = manager.find(Contas.class, Integer.parseInt(request.getParameter("id")));
}
if (request.getMethod().equals("POST")) {
contas.setDescricao(request.getParameter("descricao"));
contas.setTipo(request.getParameter("tipo").charAt(0));
if (contas.getDt_baixa() != null && contas.getDt_lancamento() != null) {
try {
contas.setDt_baixa(DateFormat.getDateInstance().parse(request.getParameter("dt_baixa")));
contas.setDt_lancamento(DateFormat.getDateInstance().parse(request.getParameter("dt_lancamento")));
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Cuidado ao inserir a data!");
}
}
contas.setValor(Double.parseDouble((request.getParameter("valor"))));
manager.getTransaction().begin();
manager.persist(contas);
JOptionPane.showMessageDialog(null, "Inserido com sucesso");
manager.getTransaction().commit();
}
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Gerenciar Contas</title>
</head>
<body style="color: cornsilk">
<p> <%@ include file="cabecalho.jsp" %></p>
<p align="center">Lista de Contas</p>
<table border="1" align="center">
<thead>
<tr>
<th>Id</th>
<th>Descrição</th>
<th>Dt Lançamento</th>
<th>Dt Baixa</th>
<th>Tipo</th>
<th>Valor</th>
</tr>
</thead>
<tbody>
<%
Query query = manager.createQuery("select c from Contas c");// vai recuperar coleção de objeto
ArrayList<Contas> lista = (ArrayList<Contas>) query.getResultList();// vai ter estados na lista
for (Contas conta : lista) {//percorre a lista de estados
%>
<tr>
<td><%= conta.getId()%></td>
<td><%= conta.getDescricao()%></td>
<td><%= conta.getDt_lancamento()%></td>
<td><%= conta.getDt_baixa()%></td>
<td><%= conta.getTipo()%></td>
<td><%= conta.getValor()%></td>
<td> <a style="text-decoration: none; color: aliceblue" href="editar.jsp?id=<%=conta.getId()%>">Editar</a></td>
</tr>
<% }
contas = new Contas();
manager.close();
%>
</tbody>
</table>
<br>
<form name="formulario" method="POST">
<table width="264" border="0" align="center" cellpadding="0" cellspacing="5">
<tr>
<td height="49" colspan="2" class="FORMULARIO" ><p align="center">Adicionar Conta</p></td>
</tr>
<tr>
<td width="104" class="FORMULARIO">Descrição:</td>
<td width="144" class="FORMULARIO"><input type="text" name="descricao" value="<%= contas.getDescricao()%>" /></td>
</tr>
<tr>
<td class="FORMULARIO">Tipo:</td>
<td class="FORMULARIO"><select name="tipo">
<option value="E">Pagar</option>
<option value="R">Receber</option>
</select></td>
</tr>
<tr>
<td class="FORMULARIO">Data de Lançamento:</td>
<td class="FORMULARIO"><input type="text" name="dt_lancamento" value="<%= contas.getDt_lancamento()%>" /></td>
</tr>
<tr>
<td class="FORMULARIO">Data de Baixa:</td>
<td class="FORMULARIO"><input type="text" name="dt_baixa" value="<%= contas.getDt_baixa()%>" /></td>
</tr>
<tr>
<td class="FORMULARIO">Valor:</td>
<td class="FORMULARIO"><input type="text" name="valor" value="<%= contas.getValor()%>" /></td>
</tr>
<tr>
<td class="FORMULARIO"> </td>
<td class="FORMULARIO">
<input type="submit" value="Enviar" name="enviar" onclick="validaCampo()" />
</td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</form>
<center> <a style="text-decoration: none; color: aliceblue" href="index.jsp">>>Voltar para página principal</a></center>
<p> <%@ include file="rodape.jsp" %></p>
</body>
</html>