在WildFly上重新部署后,CDI无法在@Requestscoped REST服务中将@Singleton设置为@Provider

Zie*_*emo 9 java rest ejb cdi wildfly

我有AuthenticationFilter,它注入了用@Singleton注释的UserController.当我第一次部署我的应用程序时 - 一切都很好,但是当我重新部署应用程序然后我尝试从任何REST服务中获取某些内容时 - 通常我会收到:

Can not set app.auth.UserController field
 app.web.rest.auth.AuthenticationFilter.userController to 
app.auth.UserController$Proxy$_$$_Weld$EnterpriseProxy$
Run Code Online (Sandbox Code Playgroud)

即使我杀死服务器并重新启动它,问题仍然存在.但经过几次重启后,问题终于消失了.

有人知道什么可能导致错误吗?

Alb*_*Bos 0

我也遇到过这个问题。@Singleton每次部署时,我都会遇到注入 (EJB)甚至 (CDI)的随机失败ApplicationScoped。我的问题是我没有. beans.xml不知何故,如果没有该beans.xml项目,则无法正确初始化。

当我添加(完全空)时,beans.xml它就解决了。希望能帮助到你。