【问题标题】:jsessionID gets appended to the url when running GAE devserverjsessionID 在运行 GAE 开发服务器时被附加到 url
【发布时间】:2013-11-09 19:45:39
【问题描述】:

由于某种原因,当我访问部署到 GAE 开发服务器的应用程序时,;jsessionid=SESSION_HERE 之类的字符串会添加到网址中。

这搞砸了,因为对于某些 url,它根本无法被解析为 GET 参数(有时它以 url 结尾,例如:http://localhost:8080/someurl;jsessionid=0000)。

我的 webapp 配置很简单,我使用 maven 和 appengine-maven-plugin 像这样运行 devserver:

mvn appengine:devserver

这是什么原因以及如何消除?

【问题讨论】:

    标签: google-app-engine jakarta-ee jsessionid devserver


    【解决方案1】:

    添加:

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

    ... 发送至您的web.xml。在jetty session documentation 中阅读更多信息。

    注意:GAE 在 Jetty 6.1 上运行。如果任何人在使用较新的 Jetty 版本时遇到相同的问题,配置参数的名称会有所不同,请参阅Jetty 9 session management

    • org.eclipse.jetty.servlet.SessionIdPathParameterName

    • jsessionid

    • 会话 URL 参数名称。默认为 jsessionid,但可以使用此上下文参数为特定的 webapp 设置。设置为“none”以禁用 URL 重写。

    【讨论】:

      猜你喜欢
      • 2013-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-14
      • 1970-01-01
      • 2011-02-17
      • 2012-07-28
      • 2011-06-08
      相关资源
      最近更新 更多