scope - 处理多个注入的 @ConversationScoped bean 的正确方法
问题描述
我在一个 @ViewScoped bean 中注入了多个 @ConversationScoped bean,这导致了很多对话锁定问题。
为了纠正这个问题,在所有@ConversationScoped bean 中,我在开始新的对话之前添加了几行代码来结束现有的对话。
正如你在进入 begin() 时看到的那样,我将在开始新的对话之前结束所有以前的对话。
public void begin() {
if (conversation != null
&& !conversation.isTransient()) {
end();
}
if (conversation.isTransient()) {
conversation.begin();
}
}
这是正确的方法吗?这会引起问题吗?
解决方案
推荐阅读
- ios - 导航控制器转换上的 iOS 黑线
- java - 创建类并将其添加到数组会导致奇怪的结果-Java
- javascript - jQuery slideDown后元素css高度返回1
- sql-server - T-SQL 右函数默认值
- c++ - 当程序在两者之间休眠时,OpenCV 函数 cv::remap() 的执行时间更长
- mysql - Pdo 一次计算多个表
- android - Android Firebase 检查用户是否关闭应用程序或断开连接
- php - Wordpress - 显示来自另一个 WP 数据库的单个 CPT
- python-3.x - Python 3.x - 共享内存中的类实例(多处理)
- bash - bash 脚本中带引号的参数