Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

setting a cookie based on the http referer

Posted on 2009-07-13
6
Medium Priority
?
474 Views
Last Modified: 2012-05-07
Hi,

I need to set a cookie for every user based on the referer. I figured out how to retrieve a cookie in a JSP here...
http://www.experts-exchange.com/Programming/Languages/Java/J2EE/JSP/Q_21663876.html?sfQueryTermInfo=1+refer

Now, I need to figure out how to set a cookie based on the value of that referer (URL). I already have a setCookie() javascript function created btw. I'd really appreciate it if someone could help me out.

Thanks,
biglarrrr
0
Comment
Question by:biglarrrr
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
6 Comments
 
LVL 27

Expert Comment

by:mrcoffee365
ID: 24848695
To set a cookie from a JSP page, you create a Cookie object and add it to the HttpServletResponse.  Something like this:

Cookie aCookie = new Cookie( "mycookiename", "mycookievalue");
aCookie .setPath("/");
response.addCookie( aCookie );

The response object is the special object in a JSP page that refers to the HttpServletResponse.

See the Cookie api here for more values to set if you want a permanent cookie rather than a session cookie:
http://tomcat.apache.org/tomcat-5.5-doc/servletapi/javax/servlet/http/Cookie.html



0
 

Author Comment

by:biglarrrr
ID: 24850850
Thanks for replying mrcoffee365...

I know how to create a cookie, I just can't figure out how to create a cookie which holds the value of the Referer. I read that I'll need to use request.getHeader("Referer") to get the referer, but how do I take the value of that and drop it in a cookie? I only want this to be a session cookie.

I'm sorry, I'm not exactly the greatest when it comes to JavaScript. :)

Thanks,
biglarrrr
0
 
LVL 27

Expert Comment

by:mrcoffee365
ID: 24851115
Okay, are you looking for javascript code or JSP code?  They are not the same thing, and you seem to be using the terms interchangeably.
0
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.

 
LVL 27

Accepted Solution

by:
mrcoffee365 earned 2000 total points
ID: 24851195
In case you mean JSP, how to set the value of the cookie is in the line I posted:

Cookie aCookie = new Cookie( "mycookiename", "mycookievalue");

If you want it to have the url in the referer, then put that in for the string of the value.

Cookie aCookie = new Cookie( "mycookiename", refererVal);


0
 

Author Comment

by:biglarrrr
ID: 24851710
THANK YOU!!! That's the part I couldn't figure out. And it was all because I didn't put quotes around "mycookiename". :( Thanks so much for your help on this! I've paste my code below...
String ref_value = null;
boolean refFound = false;
 
String referrer = request.getHeader("Referer");
System.out.println("referer url = " + referrer);
 
Cookie[] cookies = request.getCookies();
 
if (cookies != null) {
  for (int i=0; i< cookies.length;i++) {
 
    Cookie cookie = cookies[i];
 
    if (cookie.getName().equals("referrer")) {
      ref_value = cookie.getValue();
      refFound = true;
      session.setAttribute("referrer", ref_value);
      break;
    }
  }
 
  if (!refFound) {
    if (referrer!= null && referrer.length() > 0) {
      Cookie cookie = new Cookie("referrer",referrer);
      cookie.setMaxAge(30*60);
      response.addCookie(cookie);
      session.setAttribute("referrer", referrer);
    }
  }
}

Open in new window

0
 

Author Closing Comment

by:biglarrrr
ID: 31603070
Thanks for your help. I'm sorry I didn't explain my question in better detail but you managed to read my mind. :)
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

WooCommerce is becoming the most powerful e-commerce plugin for Wordpress. And why not. The platform comprises of numerous core plugins that may come in handy, powerful options to make your website development task much easier.
Are you looking for the options available for exporting EDB files to PST? You may be confused as they are different in different Exchange versions. Here, I will discuss some options available.
This tutorial will teach you the special effect of super speed similar to the fictional character Wally West aka "The Flash" After Shake : http://www.videocopilot.net/presets/after_shake/ All lightning effects with instructions : http://www.mediaf…
In this video you will find out how to export Office 365 mailboxes using the built in eDiscovery tool. Bear in mind that although this method might be useful in some cases, using PST files as Office 365 backup is troublesome in a long run (more on t…

636 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question