Riporto il codice della pagina ricerca.jsp
<%
String valore = request.getParameter("ricercaTesto")!= null && !request.getParameter("ricercaTesto").equals("") ?request.getParameter("ricercaTesto"):"";
String data = request.getParameter("ricercaData")!=null && !request.getParameter("ricercaData").equals("") ?request.getParameter("ricercaData"):"";
String ora = request.getParameter("ricercaOra")!=null && !request.getParameter("ricercaOra").equals("") ?request.getParameter("ricercaOra"):"";
Object o = request.getSession().getAttribute("kaSession");
boolean flag = o!= null ? ((Boolean)o).booleanValue() : false;
o = request.getSession().getAttribute("kbSession");
boolean flagb = o != null ? ((Boolean)o).booleanValue() : false;
o = request.getSession().getAttribute("kcSession");
boolean flagc = o != null ? ((Boolean)o).booleanValue() : false;
o = request.getSession().getAttribute("kdSession");
boolean flagd = o != null ? ((Boolean)o).booleanValue() : false;
%>
<html>
<head>
<link rel="stylesheet" type="text/css" href="<%= request.getContextPath() %>/css/newsianblu.css">
<title>Ricerca</title>
<Script language="JavaScript">
function VerificaCampiObblig()
{
var ricercaTesto = document.getElementById('ricercaTesto').value;
var ricercaData = document.getElementById('ricercaData').value;
var ricercaOra = document.getElementById('ricercaOra').value;
alert('sono in VerificaCampiObblig ');
if (ricercaTesto == "" && ricercaData== "" && ricercaOra== "" ) {
alert('Inserire la stringa o data e ora.');
document.getElementById('ricercaTesto').focus();
return false;
}
if(ricercaTesto == "" && ricercaData == "" && ricercaOra != ""){
alert('Campo Data obbligatorio.');
document.getElementById('ricercaTesto').focus();
return false;
}
if(ricercaTesto == "" && ricercaData!= "" && ricercaOra == ""){
alert('Campo Ora Obbligatorio');
document.getElementById('ricercaTesto').focus();
return false;
}
if (ricercaTesto == "" && ricercaData!= "" && ricercaData.length !=10){
alert('Formato della data non valida. Sintassi dd/mm/yyyy')
return false;
}
if (ricercaTesto == "" && !(ricercaOra.length >5 && ricercaOra.length <11)){
alert("Formato dell'ora non è valido")
return false;
}
if(ricercaTesto != "" && ricercaData!= "" && ricercaOra == ""){
alert('Campo Ora Obbligatorio');
document.getElementById('ricercaTesto').focus();
return false;
}
return true;
}
</Script>
</head>
<jsp:useBean id="keyData" scope="session" class="java.lang.String"></jsp:useBean>
<jsp:useBean id="keyOra" scope="session" class="java.lang.String"></jsp:useBean>
<body>
<h3 align="center"> Cerca in <%= request.getContextPath().substring(1) %>.log</h3>
<% if(flag){%>
<p align="center">
<font color="red">
Il formato inserito per la data non è corretto
</font>
</p>
<%} %>
<% if(flagb){%>
<p align="center">
<font color="red">
La data inserita non è valida
</font>
</p>
<%} %>
<% if(flagc){%>
<p align="center">
<font color="red">
Il formato inserito per l'ora non è corretto
</font>
</p>
<%} %>
<% if(flagd){%>
<p align="center">
<font color="red">
La data e l'ora inserite potrebbero contenere un errore
</font>
</p>
<%} %>
<form onSubmit="return VerificaCampiObblig();" method=get action="<%=request.getContextPath()%>/ricerca">
<table border="0" align="center" width="350">
<tr>
<td>Parola chiave</td>
<td><input type="text" name="ricercaTesto" value ="<%= valore%>" size=30 /></td>
</tr>
<tr>
<td>In data</td>
<td><input type="text" name="ricercaData" value ="<%= data%>" size=10 /></td>
</tr>
<tr>
<td>Alle ore</td>
<td><input type="text" name="ricercaOra" value ="<%= ora%>" size=8 /></td>
</tr>
</table>
<table align=center>
<tr>
<td><input type="submit" name="Ricerca" value="Cerca"></td>
<td><input type="reset" name="Cancella" value="Cancella"></td>
</tr>
</table>
</body>
</html>
Non riesco a capire come devo impostare il codice in modo che mi controlli la data separatamente dall'ora. L'applicazione è quasi del tutto testata, a parte il fatto che dovrei controllare separatamente l'ora e la data. Inoltre vorrei che quando inserisco un campo non valido non mi cancelli i campi validi che ho già scritto. Qualcuno può aiutarmi ?![]()
Riporto anche il codice della servlet :
import java.io.IOException;
import java.util.Vector;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class RicercaModificato extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException{
String valore = request.getParameter("ricercaTesto")!= null && !request.getParameter("ricercaTesto").equals("") ?request.getParameter("ricercaTesto"):"";
String data = request.getParameter("ricercaData")!=null && !request.getParameter("ricercaData").equals("") ?request.getParameter("ricercaData"):"";
String ora = request.getParameter("ricercaOra")!=null && !request.getParameter("ricercaOra").equals("") ?request.getParameter("ricercaOra"):"";
try {
if(UtilityRicerca.validateDataNew(data)){
if(!UtilityRicerca.dataValido(data)){
request.getSession().setAttribute("kbSession", new Boolean(true));
response.sendRedirect("ricerca.jsp");
}
}
else {
request.getSession().setAttribute("kaSession", new Boolean(true));
response.sendRedirect("ricerca.jsp");
}
if(UtilityRicerca.validateOraNew(ora, data)){
if(UtilityRicerca.dataOraValido(ora, data)){
String realPath = request.getRealPath("");
int index = realPath.indexOf("applications");
String fileName = realPath.substring(0, index)+"log/FirstProject.log";
Vector s = new UtilityRicerca().leggiFile(fileName, valore, data, ora);
request.getSession().setAttribute("key", s);
response.sendRedirect("risultatoRicerca.jsp");
}
else{
request.getSession().setAttribute("kdSession", new Boolean(true));
response.sendRedirect("ricerca.jsp");
}
}
else{
request.getSession().setAttribute("kcSession", new Boolean(true));
response.sendRedirect("ricerca.jsp");
}
}
catch (Exception e) {
e.printStackTrace();
request.getSession().setAttribute("Errore", e.getMessage());
response.sendRedirect("errore.jsp");
}
}
}
Grazie![]()

Rispondi quotando