Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CDI@是否将CODI'注入面部转换器;s@Advanced如何处理AJAX请求?_Ajax_Jsf 2_Cdi_Myfaces_Codi - Fatal编程技术网

CDI@是否将CODI'注入面部转换器;s@Advanced如何处理AJAX请求?

CDI@是否将CODI'注入面部转换器;s@Advanced如何处理AJAX请求?,ajax,jsf-2,cdi,myfaces,codi,Ajax,Jsf 2,Cdi,Myfaces,Codi,我们使用facescoverters并使用CODI的@Advanced注释对其进行注释,以便能够使用CDI注入。这适用于正常请求。但是在AJAX请求上,注入的CDIbean为空。以及中的FacesContext参数 public Object getAsObject(FacesContext context, UIComponent component, String value) 是org.apache.myfaces.context.servlet.FacesContextImpl,而不是

我们使用
facescoverter
s并使用
CODI
@Advanced
注释对其进行注释,以便能够使用
CDI
注入。这适用于正常请求。但是在
AJAX
请求上,注入的
CDI
bean为空。以及中的
FacesContext
参数

public Object getAsObject(FacesContext context, UIComponent component, String value)
org.apache.myfaces.context.servlet.FacesContextImpl
,而不是
org.apache.myfaces.extensions.cdi.jsf2.impl.listener.request.CodiFacesContextWrapper
,因为在正常请求中,当注入工作时


有人知道如何使用
AJAX
请求在
FacesConverter
s中进行注入吗?谢谢。

您是使用MyFaces Core还是Mojarra作为JSF实现?很有趣。您说过它适用于非AJAX,但在我的应用程序中(我最近从JSF托管bean迁移到CDI),@Advanced with FacesConverter(forClass=…)没有在non-AJAX.FYI上注入bean,请参见以下内容:;这个答案让我添加了JSF(RequestScope)托管bean,它只包含@FacesConverter和Converter。我对它进行了测试,它在我从JSF托管bean迁移到CDI托管bean时起作用。