cdi相关内容
@Inject 和 @Resource 和 @Autowired 注解有什么区别? 我们应该什么时候使用它们? 解决方案 @Inject vs. @Autowire vs. @Resource 的区别? @Autowired: spring 专有注解(相对于@Inject 和@Resource)按类型注入资源,即按注解字段或承包商的接口的类.如果我们很少实现接口或子类,我们可以
..
我正在尝试使用服务在数据库中持久化一个项目,并为后续服务触发 JMS 消息以获取持久化项目,以便它可以处理相同的项目.此特定操作发生在单个事务中.但是有时由于竞争条件,第二个服务无法获取相应的项目,因为它尚未持久化. 我的用例很常见,并且在各种论坛中有很多与此相关的讨论.此问题的一种解决方案是使用 CDI 事件.我尝试了相同的方法,可以解决部分问题.伪代码如下: @Inject@交易私人活
..
我在使用 RESTEASY 的其余应用程序上需要 CDI 功能.所以我遵循了手册的说明 在我的应用程序上设置 resteasy-cdi 模块,该模块在 JBoss AS7 上运行. 但是当我启动服务器时出现以下错误: 13:48:08,631 错误 [org.apache.catalina.core.StandardContext](MSC 服务线程 1-4)上下文 [/MainSer
..
对作用域、ejb 和托管 bean 有一些疑问. 范围(javax.enterprise.context.ApplicationScope、javax.enterprise.context.SessionScope)是否仅适用于 EJB?或者它们适用于所有托管 bean?直到今天,我非常确定它适用于所有托管 bean. 在我的应用程序中,我们有: @ApplicationScoped
..
如何在 WildFly 上完全禁用 WELD.我不需要它,因为我使用了另一个 DI 框架. 异常 0:javax.enterprise.inject.UnsatisfiedResolutionException:无法使用限定符 [@javax.enterprise.inject.Any(), @javax.enterprise.inject.Default() 解析“org.springfr
..
我正在试验 Java EE 7、CDI、JPA 和 JSF. 当 webapp 启动时,我想在我的 CDI bean(用@PostConstruct 标记)中运行一个初始化方法,它对数据库做一些工作(插入一些行等).为此,我需要一笔交易,但这并不像我预期的那么容易. 我曾尝试将 @Transactional 注释添加到我的方法中,但显然它仅适用于 EJB.我实际上尝试将我的 bean
..
这个问题与上一个关于编写一个会话超时处理程序. 该线程中的答案涉及从 servlet 访问各种会话范围的托管 bean.建议(如此处所示)是在过滤器: HttpSession session = request.getSession(false);用户 user = (session != null) ?(用户) session.getAttribute("user") : null;
..
使用 CDI 和 JSF2 时如何将 HTTP 请求参数注入 bean 中? 解决方案 提示: 在进一步阅读之前,请先查看 http://showcase.omnifaces.org/cdi/Param.自己动手可能已经过时了,因为现在omnifaces 已成为事实上的标准.如果当时omnifaces有这个,我可能不会写这个 CDI 不能解决像注入请求参数这样的特殊问题.这应该通过扩
..
我有一个具有明确定义界面的应用程序.它使用 CDI 来解析模块(具体来说,它使用 API 接口上的 Instance 注入点来解析模块)并通过接口来回传递各种数据,而不会出现问题.我有意将 API 和实现分开,并且模块仅从 API 继承以避免紧密耦合,并且应用程序仅通过运行时依赖关系了解模块,并通过 API 完成数据传递.应用程序在没有模块的情况下运行良好,只需将 jar 放入 WEB-INF/l
..
仅通过几次搜索,这似乎是一个存在一段时间的问题.我写了一个如下所示的 FacesConverter.对象 Category 是一个 JPA 实体,CategoryControl 是获取它的 DAO. @FacesConverter(value = "categoryConverter")公共类 CategoryConverter 实现 Converter {@Inject 私有 Category
..
我有一个支持 bean,如下所示: @Named@RequestScoped公共类 ClientNewBackingBean {@注入私人 ClientFacade 门面;私人客户客户; Client 类有一个 List;childrenList 属性等.使用 new ArrayList() 设置 childrenList 时,我可以创建一个新的 Client. 在视图中,我有一个输入文
..
我们开始尝试使用 CDI 实现后端服务.场景是这样的: 带有@Startup 的EJB 在EAR 部署时启动.一个 ApplicationScoped bean 被注入到这个: @ApplicationScoped公共类工作平台{私有 PooledExecutor threadHolder;@Inject @Any私有实例工人来源;... 该 bean 也有一个 Observer 方法,
..
在 CDI 中有 @ApplicationScoped 和 (javax.inject) @Singleton 伪作用域.它们之间有什么区别?除了 @ApplicationScoped 被代理,而 @Singleton 不是. 我可以将我的 @Singleton bean 更改为 @ApplicationScoped 吗?@ApplicationScoped bean 可以有两个(或多个)实
..
我想在我的 Java EE 项目中使用 spring 数据存储库.我用: WildFly 10.0.0 休眠 5.0.7 Spring 数据 JPA 1.10.6 CDI 代替 Spring DI 我创建了以下类和接口: @Entity公共类 TestEntity {@ID@GeneratedValue(策略 = GenerationType.IDENTITY)私人长ID;@N
..
我正在尝试使用来自 PrimeFaces 的 ChartBean 示例.这是视图:
..
经过一些实验,这在使用 CDI bean 时似乎是一个问题,与我最初假设的 PrimeFaces 无关. 如果我使用@ManagedBean 将 TableBeanLazy 更改为托管 Bean,那么构造函数和 @PostConstruct 方法只会像我预期的那样被调用一次. 任何人都可以对此有所了解吗? =====================================
..
在 JBoss 7.1.1 上的 JavaEE6 项目(EJB3、JSF2)中,我们似乎有SeamFaces @ViewScoped 的内存泄漏. 我们制作了一个小原型来检查事实: 我们使用 JMeter 调用页面 200 次; 页面包含并调用一个注入有状态 EJB 的视图范围 bean; 我们将会话超时修复为 1 分钟. 在测试结束时,我们使用 VisualVM 检查内存的
..
是否有没有附加 @...Scoped 注释的 @Named CDI bean 的任何默认范围?我在官方焊接文档中没有找到任何相关信息.> @Named bean 可以通过 JSF 访问而无需额外的注解,因此某些隐式作用域似乎是可能的. 谢谢 解决方案 默认作用域是依赖的伪作用域 @Dependent,如 焊接文档: CDI 具有所谓的依赖伪作用域.这是默认的未显式声明作用域类
..
目前我正在尝试将无状态 EJB 注入 Jboss 6 AS Final 上的 CDI 托管控制器.控制器在可从 JSF 页面访问的上下文中进行管理.如果我用 @EJB 注入无状态 bean,它就可以工作.如果我使用 @Inject 注入无状态 EJB,则会出现以下异常: 我的控制器: @Named("TestController")公共类测试控制器{@注入private TestManag
..
我是 Java EE/JSF 的新手,现在阅读 CDI 限定符 - 更改类实现的可能性.这很好,但我有一个问题.据我所知,我可以使用限定符更改类实现,但我需要在使用此实现的任何地方更改它.在一个地方完成的最佳解决方案是什么?凭借我对 Java EE 的一点了解,我想出了这个. 让我们想象一下我们正在创建一个简单的计算器应用程序.我们需要创建几个类: Calculator(计算器的基本实
..