首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JSF vs CDI SessionScope对Statelss EJB事务有奇怪的影响。有谁能解释一下吗?

JSF vs CDI SessionScope对Statelss EJB事务有奇怪的影响。有谁能解释一下吗?
EN

Stack Overflow用户
提问于 2012-09-21 23:32:38
回答 1查看 727关注 0票数 4

我有一个带有注入的无状态会话bean (UserInfoService)的SessionScoped托管Bean (UserInfoController)。

UserInfoController调用UserInfoService来更新UserInfo记录。UserInfoService加载适当的UserInfo记录,修改它,最后调用em.flush();

当受管bean UserInfoController使用CDI注解(javax.enterprise.context.SessionScoped)注解时,除非使用PersistenceContextType.EXTENDED注解无状态bean的实体管理器,否则不会更新用户记录。

如果受管bean使用JSF注解(javax.faces.bean.SessionScoped)注解,则在使用PersistenceContextType.TRANSACTION时,记录会成功更新。

有人能解释这种行为吗?不管调用者是JSF还是CDI SessionScoped托管bean,事务边界不应该被限制到无状态Bean吗?(未定义TransactionAttributeType:默认为必填)

任何信息都将不胜感激!谢谢!本

EN

回答 1

Stack Overflow用户

发布于 2013-04-29 16:33:04

PersistenceContext类型依赖于EJB会话bean,而不是这个链接What is the difference between Transaction-scoped Persistence context and Extended Persistence context?中解释的支持bean。

在我的例子中,我正在使用带有默认PersistenceContext类型(事务)的@命名CDI,并且在我使用javax.enterprise.context.SessionScoped时记录更新成功

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12533628

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档