Jetty 7 will not allow me to customize a session cookie path

Posted by Bob Obringer on Stack Overflow See other posts from Stack Overflow or by Bob Obringer
Published on 2010-04-18T23:51:12Z Indexed on 2010/04/18 23:53 UTC
Read the original article Hit count: 230

Filed under:
|
|

Using Jetty 7.0.2, I am unable to set a custom session cookie path.

I am hosting multiple sites on the same server using apache to proxy requests to the proper context. (replaced http as htp as stackoverflow thinks my multiple links might be spam)

<VirtualHost *:80>
  ServerName context.domain.com

  ProxyRequests On
  ProxyPreserveHost Off

  <Proxy *:80>
    Order deny,allow
    Allow from 127.0.0.1
  </Proxy>

  ProxyPass / htp://localhost:8080/context/
  ProxyPassReverse / htp://localhost:8080/context/

  <Location />
    Order allow,deny
    Allow from all
  </Location>
</VirtualHost>

Jetty is running on the same server on port 8080 and my context is available @ /context

The user accesses the application @ htp://context.domain.com but jetty is setting the path for the session cookie @ /context. This prevents the browser from accessing the cookie since the the actual path to the context is not being used. I need to override Jetty's default setting to set the cookie for the context, and set the path at the root ( / ).

In my Jetty's webdefault.xml I have the following, which is partially working:

<context-param>
  <param-name>org.eclipse.jetty.servlet.SessionCookie</param-name>
  <param-value>CustomCookieName</param-value>
</context-param>
<context-param>
  <param-name>org.eclipse.jetty.servlet.SessionPath</param-name>
  <param-value>/</param-value>
</context-param>

The cookie is properly set with a custom name, but it is NOT setting the SessionPath. No matter what I set the value to... it refuses to set a cookie at any path but /context.

This has been driving me crazy so any help would be greatly appreciated.

© Stack Overflow or respective owner

Related posts about jetty

Related posts about cookies