Win a copy of Head First Android this week in the Android forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Tim Cooke
  • Campbell Ritchie
  • Paul Clapham
  • Ron McLeod
  • Liutauras Vilda
Sheriffs:
  • Jeanne Boyarsky
  • Rob Spoor
  • Bear Bibeault
Saloon Keepers:
  • Jesse Silverman
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
Bartenders:
  • Piet Souris
  • Al Hobbs
  • salvin francis

Cookie persistance across packages?

 
Ranch Hand
Posts: 134
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I have an app that checks for a cookie, and if it doesn't exist, asks for log-in information, and sets a cookie once login information is verified.

Nothing earth shattering there, and that works perfectly. The cookie is set. Once the cookie is set, the servlet forwards the response to a servlet in another package. I am trying to use the following code to retrieve the cookie:

If I try to do getC00kies from a different package, cookieArray is null. I know the code works though because if I use it from the same package, then I can get the cookies. I have been reading as many different threads I can find on the topic, but I can't find any that specifically deal with multiple packages, and I am guessing that the fact that I am not able to get the cookies has to do with the fact it is from a different package.

Is that a correct assumption? I have checked Sun's documentation, and I can not seem to find what I have to do to set the cookie to make it available across packages.

EDIT: Now that I asked, I apparently need to set the domain correctly for each cookie....

[ August 23, 2006: Message edited by: Bear Bibeault ]
[ August 23, 2006: Message edited by: Chad Clites ]
 
Chad Clites
Ranch Hand
Posts: 134
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I apologize for the double post, but I figured out my problem. My assumption about setting the Domain was correct; however, many threads I looked at were giving incorrect advice. Since I am testing in my development server, I knew my domain was localhost. Many of the threads I looked at recommended setting domain like this:

userCookie.setDomain("localhost");
or
userCookie1.setDomain("http//localhost:8080");

Unfortunately, that advice seems to be incorrect. From the Cookie documentation:

The form of the domain name is specified by RFC 2109. A domain name begins with a dot (.foo.com) and means that the cookie is visible to servers in a specified Domain Name System (DNS) zone (for example, www.foo.com, but not a.b.foo.com).



So it turns out that the correct domain for my cookie was:
userCookie1.setDomain(".localhost.Auth_New");

And now it works perfectly.
[ August 23, 2006: Message edited by: Chad Clites ]
 
reply
    Bookmark Topic Watch Topic
  • New Topic