• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 4755
  • Last Modified:

How to compare Dates with Current Date in JSP ?

Hello,

I would like to know how to compare dates with todays date ?


Example  In the JSP -

Date today;
     String s_date_now;
     SimpleDateFormat formatter;
     
     formatter = new SimpleDateFormat("MM/dd/yyyy");
     today = new Date();
     s_date_now = formatter.format(today);

     out.print ( "JavaDate: " + s_date_now);


 <td> <span class="label">  </span> &nbsp;<% out.print ( x_crewing.getStartDateOfMemberInShow(s_email );%> <br> </td>  
<td> <span class="label">  </span>&nbsp; <% out.print ( x_crewing.getEndDateOfMemberInShow(s_email );%> <br> </td>
   


The output is

Member   Start Date EndDate
Sarah       01/10/2006    08/31/2006
Alex       01/10/2006     04/01/2006
My question is how do I modify the above code - so if todays date is within the above date range  - then just print "PRESENT"  else print the dates as above.

Please advise

Thanks





0
sdesar
Asked:
sdesar
  • 5
  • 2
1 Solution
 
fargoCommented:
hi, try this and let us know if u have any problems
http://www.javaalmanac.com/egs/java.util/CompDates.html
0
 
sdesarAuthor Commented:
Hello ,
Thanks for the prompt reponse!

This is what I tried , but I am getting an error .. please advise
ie if Sarah's End date is after Todays date then I want to print PRESENT  , here's the code ..... please advise

<% if ( x_crewing.getEndDateOfMemberInShow("Sarah).after(s_date_now) == true  ) { out.print ("PRESENT"); }  %>


Awaiting a response.

Thanks
0
 
sdesarAuthor Commented:
This is the error -

 cannot find symbol
symbol  : method after(java.lang.String)
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
Siva Prasanna KumarPrincipal Solutions ArchitectCommented:
it must be.(a double quote is missing).

<% if ( x_crewing.getEndDateOfMemberInShow("Sarah").after(s_date_now) == true  ) { out.print ("PRESENT"); }  %>

does x_crewing.getEndDateOfMemberInShow("Sarah") returns Date Object ????

Thank You.



0
 
fargoCommented:
using Date class is deprecated. But if u still wanna use it..following is the way

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy");
java.util.Date datestart = new java.util.Date();
java.util.Date dateend = new java.util.Date();
datestart = sdf.parse(x_crewing.getStartDateOfMemberInShow(s_email ));
dateend = sdf.parse(x_crewing.getEndDateOfMemberInShow(s_email ));

if(today.after(datestart) && today.before(dateend)){
out.println("PRESENT");
}else{
out.println("NOT PRESENT");
}

you were getting error..becoz, the value returned from x_crew..... is not a Date but may be String.
Better use Calendar instead of Date.



0
 
sdesarAuthor Commented:
The x_crewing method returns a String.  
I was able to use the above code to get the data.
I will change it to use Calander.


Here are your excellent points.!!
Thanks Fargo.


0
 
sdesarAuthor Commented:
If there is no data then I get this error
javax.servlet.ServletException: Unparseable date: ""

Since x_crewing.getEndDateOfMemberInShow(s_email )) returns a String and the String is null.


How do i fix this error, I tried to check for null value but its not working.

Please advise.

0
 
sdesarAuthor Commented:
I figured it out.  I needed to check for null. Thanks anyways.  
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

  • 5
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now