Pessoal, é o seguinte, eu estou querendo fazer uma pesquisa com data, e essa pesquisa vai apenas retornar para uma pagina em branco, e ela está dando o seguinte erro
Erro:java.util.Date cannot be cast to java.sql.Date
FORMULARIO
data += '/';
inputData.value = data;
}
}else if(tecla == 8 || tecla == 0) // Backspace, Delete e setas direcionais(para mover o cursor, apenas para FF)
return true;
else
return false;
}
</script>
</head>
<body>
PREENCHA TODAS AS DATAS.<br /><br />
<form action="controleOse.jsp?action=relData" method="post">
<label for="data1">DATA:</label>
<input type="text" name="data1" id="data1" maxlength="10" onkeypress="return dateMask(this, event);"/>
<label for="data2">ATÉ </label>
<input type="text" name="data2" id="data2" maxlength="10" onkeypress="return dateMask(this, event);"/>
<input type="submit" value="Gerar relatorio" /><br />
<td><% out.print("<a href=index.jsp?>Voltar</a>");%></td>
</form><br />
<font color="#FF0000">
${msg}
</font>
</body>
</html>[/code]
Controller
[code]else if(action.equalsIgnoreCase("relData")){
try{
String d1 = request.getParameter("data1");
String d2 = request.getParameter("data2");
DateFormat dt1= new SimpleDateFormat("yyyy-MM-dd");
Date data1=(java.sql.Date)dt1.parse(d1);
DateFormat dt2= new SimpleDateFormat("yyyy-MM-dd");
Date data2=(java.sql.Date)dt2.parse(d1);
OseBD ob = new OseBD();
Ose o = ob.ConsultaData(data1,data2);
if(o.getData1()!=null && o.getData2()!=null){
request.getRequestDispatcher("osesRelData.jsp").forward(request, response);
}else {
request.setAttribute("msg", "Não existe Ose cadastrada nesse periodo");
request.getRequestDispatcher("osesRelData.jsp").forward(request, response);
}
}catch(Exception e){
out.print("Erro:"+e.getMessage());
}
}[/code]
DAO
[code] public Ose ConsultaData(Date data1, Date data2)throws Exception{
OpenDatabase();
String SQL= "SELECT *,CONCAT_WS('/', DAY(data_pedido), MONTH(data_pedido), YEAR(data_pedido)) AS dataformatada "
+ " FROM ose,cliente,servico "
+ " WHERE ose.cod_cliente=cliente.cod_cliente "
+ " AND ose.cod_servico=servico.cod_servico "
+ " AND DATE(data_pedido) BETWEEN ? and ? "
+ " ORDER BY data_pedido DESC ";
pstmt=con.prepareStatement(SQL);
pstmt.setDate(1,data1);
pstmt.setDate(2,data2);
rs = pstmt.executeQuery();
Ose o= new Ose();
if(rs.next()){
o.setCod_ose(rs.getInt("cod_ose"));
o.setDatashow(rs.getString("dataformatada"));
o.setNome(rs.getString("nome"));
o.setCpf(rs.getString("cpf"));
o.setRg(rs.getString("rg"));
o.setNomeServico(rs.getString("nomeServico"));
o.setValor(rs.getString("valor"));
o.setSituacao(rs.getString("situacao"));
o.setObservacao(rs.getString("observacao"));
}
return o;
}
Gostaria de saber, oque esta errado… e oque eu posso modificar, obrigado desde já