2013-10-30 13 views
7

Aus irgendeinem Grund Zeichenfolge wie: ;jsessionid=SESSION_HERE wird zu URLs hinzugefügt, wenn ich meine App auf GAE Devserver bereitgestellt besuchen.jsessionID wird an die URL beim Ausführen von GAE devserver angehängt

Dies vermasselt Dinge, da für einige der URLs überhaupt nicht als GET-Parameter geparst werden kann (manchmal endet es mit URLs wie: http://localhost:8080/someurl;jsessionid=0000).

Meine Webapp configuraion ist trivial und ich verwende Maven und appengine-maven-plugin so laufen devserver:

mvn appengine:devserver 

Was ist der Grund dafür und wie diese beseitigt werden können?

Antwort

12

Anzahl:

<context-param> 
    <param-name>org.mortbay.jetty.servlet.SessionURL</param-name> 
    <param-value>none</param-value> 
</context-param> 

... auf Ihre web.xml. Lesen Sie mehr dazu in jetty session documentation.

Hinweis: GAE läuft auf Jetty 6.1. In jedem das gleiche Problem mit einer neueren Jetty Version erfährt, wird der Konfigurationsparameter anders genannt, siehe Jetty 9 session management:

  • org.eclipse.jetty.servlet.SessionIdPathParameterName

  • jsessionid

  • Session URL-Parameter-Namen. Der Standardwert ist jsessionid, kann aber für eine bestimmte Webanwendung mit diesem Kontextparameter festgelegt werden. Wählen Sie "None", um das Umschreiben von URLs zu deaktivieren.

+0

löste mein Problem! Vielen Dank! – OhadR