write a filter that activates for that url, and get the time just before you doFilter. if you need to, you can pass the date obj as an attribute
Date date = new Date(); hreq.setAttribute("thisIsTheDate", date); chain.doFilter(hreq, hres); Jon Wingfield wrote: > The HTTP spec (rfc2616) says clients should only send the Date header > with http messages with body content (POST, PUT) and even then it's > optional. > > Try adding a date string as a parameter on your GET request which your > servlet can then parse from request.getParameter(...). > > One way to do this would be to change your link to a form with a hidden > input field for your date value. Add an onclick/onsubmit javascript > handler to your form button which sets the value of the hidden field to > the current date in a format that your servlet will understand. > > for example: > > function setDate(form) { > form.dateField.value = new Date().toString(); > } > > > Example assumes a hidden form input field with name dateField. > > HTH, > > Jon > > Vinu Varghese wrote: >> SK, >> That javascript prints the current client time. But I want the client >> time with the request. >> The scenario is : >> >> I have a index.jsp >> >> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" >> pageEncoding="ISO-8859-1"%> >> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> >> <html> >> <head> >> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> >> <title>Insert title here</title> >> </head> >> <body> >> Client time : <a href="clienttime.htm"> Click</a> >> </body> >> </html> >> >> and a servlet that can take the client time (Hoping to :-) ) which is >> mapped to 'clienttime.htm' >> >> protected void doGet(HttpServletRequest request, >> HttpServletResponse response) throws ServletException, IOException { >> response.setContentType("text/plain"); >> long time = request.getDateHeader("Date"); // Hoping to >> get the client date. >> PrintWriter out = response.getWriter(); >> out.println("Server time " + new Date()); >> out.println("Client time (long) " + time); >> out.println("Client time " + new Date(time)); >> } >> >> >> Is there any way to do this (get the client time from the request) ? >> Or Am I trying to do a dumb thing ? ;) >> >> Thanks & Regards >> Vinu >> >> >> >> >> Shinya Koizumi wrote: >>> Vinu >>> Yeah, you are right about it, I can't get getDateHeader working. >>> >>> For the solution one, I have setup like this for jsp and worked. >>> >>> <%@ page session="false" %> >>> <html> >>> <head> >>> <meta http-equiv="Content-Type" content="text/html; >>> charset=iso-8859-1"> >>> <title><%= application.getServerInfo() %></title> >>> </head> >>> <body> >>> Current Time: >>> <% >>> out.println("<SCRIPT LANGUAGE=JavaScript>"); >>> out.println("var currentTime = new Date();"); >>> out.println("document.write(currentTime.toLocaleString());"); >>> out.println("</SCRIPT>"); >>> out.println("</HEAD>"); >>> %> >>> </body> >>> </html> >>> >>> SK >>> ----- Original Message ----- From: "Vinu Varghese" <[EMAIL PROTECTED]> >>> To: "Tomcat Users List" <users@tomcat.apache.org> >>> Sent: Tuesday, July 11, 2006 1:24 AM >>> Subject: Re: Getting the date/time from the client >>> >>> >>>> Thanks SK, >>>> >>>> I tried the second solution , but request.getDateHeader("Date") >>>> returns -1 . >>>> >>>> Also I didn't understand the first solution ( embed a javascript), >>>> Can u >>>> pls elaborate that. >>>> >>>> Thanks and regards >>>> Vinu >>>> >>>> Shinya Koizumi wrote: >>>>> One is to embed javascript in the output >>>>> >>>>> out.println("<HTML><HEAD><title>JavaScriptExample</title>"); >>>>> out.println("<SCRIPT LANGUAGE=JavaScript>"); >>>>> out.println("function back() {"); >>>>> out.println("history.back(-1);"); >>>>> out.println("}"); >>>>> out.println("</SCRIPT>"); >>>>> out.println("</HEAD>"); >>>>> >>>>> >>>>> The other solution is to get it from the request header. >>>>> >>>>> protected void doGet(HttpServletRequest request, HttpServletResponse >>>>> response) >>>>> throws ServletException, IOException { >>>>> long l = request.getDateHeader("Date"); >>>>> Date d = new Date(l); >>>>> System.out.println(d); >>>>> } >>>>> >>>>> SK >>>>> ----- Original Message ----- From: "Vinu Varghese" <[EMAIL PROTECTED]> >>>>> To: "Tomcat Users List" <users@tomcat.apache.org> >>>>> Sent: Tuesday, July 11, 2006 12:51 AM >>>>> Subject: Getting the date/time from the client >>>>> >>>>> >>>>>> Hi All, >>>>>> >>>>>> I am doing a project in jsp/servlet and tomcat, which requires to >>>>>> take >>>>>> the client date/time (ie the time of the machine the browser is >>>>>> running). Is there any way to accomplish this ? >>>>>> >>>>>> Thanks & regards >>>>>> Vinu >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> ........................................ >>>>>> >>>>>> Vinu Varghese >>>>>> [EMAIL PROTECTED] >>>>>> www.x-minds.org >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> --------------------------------------------------------------------- >>>>> To start a new topic, e-mail: users@tomcat.apache.org >>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>> >>>>> >>>>> >>>> >>>> -- >>>> ........................................ >>>> >>>> Vinu Varghese >>>> [EMAIL PROTECTED] >>>> www.x-minds.org >>>> >>>> >>> >>> >>> >>> --------------------------------------------------------------------- >>> To start a new topic, e-mail: users@tomcat.apache.org >>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>> For additional commands, e-mail: [EMAIL PROTECTED] >>> >>> >>> >> > > > > --------------------------------------------------------------------- > To start a new topic, e-mail: users@tomcat.apache.org > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]