【问题标题】:How to configure Seaside 3.2 session timeouts (age)如何配置 Seaside 3.2 会话超时(年龄)
【发布时间】:2016-12-15 20:53:23
【问题描述】:

使用 Seaside 应用程序启动我的图像时,我在启动方法中有此代码:

WAMySeasideApp>>startUp: resuming 
        WAMySeasideApp waApplication
                preferenceAt: #maximumRelativeAge
                put: 18000. "5 hours"
        WAEFTTasksApp waApplication
                preferenceAt: #maximumAbsoluteAge
                put: 86400. "24 hours"
        ZnZincServerAdaptor startOn: 8080.

WAMySeasideApp>>waApplication
        ^ WAAdmin defaultDispatcher handlerAt: 'my-seaside-app'

这个“最大年龄”会话参数在 seaside config web 应用程序中正确显示,但每个 seaside 会话仍然是 30 分钟。

通过代码动态配置会话超时(年龄)的正确方法是什么?请使用 Seaside 3.2。

【问题讨论】:

  • 也许您可以在更改值后重新创建缓存: WAMySeasideApp waApplication preferenceAt: #maximumRelativeAge put: 18000; createCache.
  • 调用createCache是​​不够的,我们需要分配新的缓存:WAMySeasideApp waApplication 缓存:WAMySeasideApp waApplication createCache。
  • 就是这样!谢谢!但有些方便
  • ...但是一些方便的方法会很好(resetPrefsCace 或类似的东西)。
  • 我们进行应用缓存:app createCache 以使更改生效。 +1 方便的方法。

标签: smalltalk pharo seaside


【解决方案1】:

这有帮助吗:

anApplication cache expiryPolicy configuration 
at: #cacheTimeout put: 1200

(来自http://book.seaside.st,18.5 捕获会话到期通知)

【讨论】:

  • 很遗憾没有。 Seaside book 已经过时,Seaside 3.2 中根本没有“expiryPolicy”方法。这适用于较旧的 Seaside 版本...
  • 啊,这就是我没有找到关于maximumRelativeAge/maximumAbsoluteAge 的任何信息的原因。我只看了海边3.1
猜你喜欢
  • 2013-02-28
  • 1970-01-01
  • 2015-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-15
  • 2021-12-28
  • 1970-01-01
相关资源
最近更新 更多