写点什么

了解 Seam 的嵌套对话和超时

  • 2008-01-17
  • 本文字数:812 字

    阅读完需:约 3 分钟

对 Web 应用开发人员来说,状态管理一直是一个挑战。对话应该在应用层而不是请求层来处理交互。Jacob Orshalick 以 Seam 的酒店预订示例应用为例,论述了 Seam 的对话模型,并解释了如何将嵌套对话运用于该示例。

Seam 的对话模型提供了一个简化方法来处理 continuations。如果你熟悉 continuation server 的概念,你就知道它们提供了包括无缝后退按钮处理和自动状态管理在内的功能。一个用户会话有很多 continuations,它们是执行过程中简单的状态快照,可在任何时候恢复。如果你对这个概念不熟悉,别担心,Seam 使其变得很简单。

这只是模型的一部分,Seam 还允许对话的嵌套:

嵌套对话提供了一个状态容器,它堆叠在最早的对话或外部对话的状态容器之上。任何在嵌套对话状态容器中设置的对象,都不影响可从父对话状态容器中访问的对象。这就允许每个嵌套对话能保持其自己独有的状态。

Orshalick 从定义嵌套对话到确保它被妥善地清空一路演示下来。他用 JBoss Developer Studio 来扩展 Seam 的酒店预订示例应用,生动地完成了嵌套对话的讲解。

Jacob Orshalick 不止澄清了嵌套对话,他还讨论了对话超时的话题:

对话超时似乎是一个普遍被误解的 Seam 概念。在 Seam 论坛上,我常常看见一些帖子宣称对话超时不起作用。实际上它工作得很正常,只不过你必须去理解它的语义。

Orshalick 用与嵌套对话相同的例子说明了,在处理多对话时,只有后台对话会受到对话超时的影响。照这样来说,只有会话本身超时时,前台对话才会超时。

Orshalick 最后总结到:

通过其简单的对话模型,Seam 提供了一个非常有吸引力的方法来管理状态。过去开发人员艰难处理的复杂问题,包括多窗口操作和后退按钮处理,都能处理得天衣无缝了。

查看英文原文 Understanding Seam Nested Conversations and Timeouts - - - - - -

译者简介: 王丽娟(Ivy Wang),一个快乐的程序员,持续从事 Java EE 中间件和 Java EE 企业应用的开发,关注软件架构技术。职业目标是成长为一名优秀的架构师。

2008-01-17 21:481158
用户头像

发布了 151 篇内容, 共 66.1 次阅读, 收获喜欢 18 次。

关注

评论

发布
暂无评论
发现更多内容

2023开发者必备iOS开发工具

MatrixOne Meetup回顾 | 深圳站

MatrixOrigin

分布式数据库 云原生数据库 MatrixOrigin MatrixOne HTAP数据库

哈啰一面:如何优化大表的查询速度?

王磊

Java 面试

究竟什么是用户画像?不得不看的构建法宝!

职场工具箱

用户画像

基于xstate实现携程金服业务流程动态化

赫杰辉

Go语言实现GoF设计模式:备忘录模式的实践探索

华为云开发者联盟

开发 华为云 Go 语言 华为云开发者联盟

手把手入门MO | 如何通过 Superset 实现 MatrixOne 的可视化监控

MatrixOrigin

分布式数据库 云原生数据库 MatrixOrigin MatrixOne HTAP数据库

MatrixOne实战系列回顾 | MatrixOne 集群运维

MatrixOrigin

分布式数据库 云原生数据库 MatrixOrigin MatrixOne HTAP数据库

软件测试/人工智能|Python函数与调用:解放编程力量的关键

霍格沃兹测试开发学社

分享一个关于 Go 错误处理的新提案

伤感汤姆布利柏

亚马逊云科技推出新一代自研芯片

财见

【AIOps】一种全新的日志异常检测评估框架:LightAD,相关成果已被软工顶会ICSE 2024录用

华为云PaaS服务小智

云计算 华为云

矩阵起源入选IDC《中国大数据管理解决方案技术评估,2023》

MatrixOrigin

分布式数据库 云原生数据库 MatrixOrigin MatrixOne HTAP数据库

一文带你掌握C语言的分支结构

不在线第一只蜗牛

算法 编程语言 C语言

一站式解决方案:带你体验在线生成用户画像的魅力

职场工具箱

用户画像

软件测试/人工智能|Python标识符:代码世界中的命名之道

霍格沃兹测试开发学社

AREX 在开发自测场景中应用实践

AREX 中文社区

开源 自动化测试 回归测试 流量回放

Istio 网格的出口定义者:深入了解 Egress Gateway

华为云开发者联盟

云计算 云原生 后端 华为云 华为云开发者联盟

“碳”出新路!天翼云紫金架构给产业发展一点“颜色”!

天翼云开发者社区

人工智能 云计算

了解Seam的嵌套对话和超时_Java_Bryan Clauser_InfoQ精选文章