2013-10-30 12 views
7

Per qualche motivo, ad esempio: ;jsessionid=SESSION_HERE viene aggiunto agli URL quando visito la mia app distribuita a GAE devserver.jsessionID viene aggiunto all'URL durante l'esecuzione di GAE devserver

Questo fa incasinare le cose da quando per alcuni URL non può essere analizzato come un parametro GET del tutto (a volte finisce con url come: http://localhost:8080/someurl;jsessionid=0000).

mio webapp configuraion è banale e lo uso Maven e appengine-maven-plugin per eseguire devserver in questo modo:

mvn appengine:devserver 

Qual è la ragione di questo e come questo può essere rimosso?

risposta

12

Add:

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

... al tuo web.xml. Maggiori informazioni su questo in jetty session documentation.

Nota: GAE è in esecuzione su Jetty 6.1. Nel chiunque sperimenta lo stesso problema con una versione più recente molo, il parametro di configurazione è denominato in modo diverso, vedere Jetty 9 session management:

  • org.eclipse.jetty.servlet.SessionIdPathParameterName

  • jsessionid

  • Session URL nome del parametro. Il valore predefinito è jsessionid, ma può essere impostato per una particolare webapp con questo parametro di contesto. Impostare su "nessuno" per disabilitare la riscrittura dell'URL.

+0

risolto il mio problema! Grazie! – OhadR