【问题标题】:JSFUnit inconsistently getting JSFServerSessionJSFUnit 不一致地获取 JSFServerSession
【发布时间】:2013-02-19 06:40:24
【问题描述】:

我们正在尝试在 WebLogic 12c 容器上使用 Arquillian 运行 JSFUnit,但遇到了一些问题。

首先,当我们尝试使用@InitialPage注解注入JSFServerSession和JSFClientSession时,JSFServerSession总是返回null。

其次,我们尝试通过创建新 JSFSession 并从中获取 JSFServerSession 和 JSFClientSession 的传统路线来解决该问题。一旦我们运行第二个测试,我们会得到“java.lang.IllegalStateException:找不到 HttpSession。确保 JSFUnitFilter 已运行并且您的测试扩展了 org.apache.cactus.ServletTestCase。”

这似乎很随意,因为有时我们会运行一个测试并且它通过了。有时下一次它会失败。或者添加一个看起来不应该相关的行,会抛出“找不到 HttpSession”错误。

它似乎无法处理多次创建 JSFSession,或者服务器上有一些超时,即使测试战正在取消部署,也需要超时。有什么想法吗?

【问题讨论】:

    标签: jsf-2 jboss-arquillian weblogic12c jsfunit


    【解决方案1】:

    我不确定这是否也适用于您的问题,但我在 JBoss 7 上遇到过类似问题。通常问题可以通过以下方式解决:

    • 使用Servlet 3.0 协议,该协议应包含与web.xml 相关的过滤器
    • 如果这没有帮助(比如我的情况),请使用以下解决方案:https://stackoverflow.com/a/17036005/1667977
    • 无论如何,尽量避免自己创建会话

    【讨论】:

      猜你喜欢
      • 2015-11-26
      • 1970-01-01
      • 1970-01-01
      • 2014-03-30
      • 1970-01-01
      • 2016-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多