Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.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
Jsf EJB依赖FacesContext是一种糟糕的设计吗?_Jsf_Jakarta Ee_Ejb - Fatal编程技术网

Jsf EJB依赖FacesContext是一种糟糕的设计吗?

Jsf EJB依赖FacesContext是一种糟糕的设计吗?,jsf,jakarta-ee,ejb,Jsf,Jakarta Ee,Ejb,例如,通过参数将context.getExternalContext.getRequestLocale传递给EJB,而不是从EJB内部使用导入和getCurrentInstance,会更好吗 import javax.faces.context.FacesContext; FacesContext.getCurrentInstance() 我是web开发新手如果您认为您的软件系统是一个三层架构,那么作为JSF框架一部分的FacesContext属于表示层,EJB属于应用层 一般来说,当一个较低

例如,通过参数将context.getExternalContext.getRequestLocale传递给EJB,而不是从EJB内部使用导入和getCurrentInstance,会更好吗

import javax.faces.context.FacesContext;
FacesContext.getCurrentInstance()

我是web开发新手

如果您认为您的软件系统是一个三层架构,那么作为JSF框架一部分的FacesContext属于表示层,EJB属于应用层

一般来说,当一个较低层的应用程序依赖于较高层的表示时,这是一个糟糕的软件设计。它导致高耦合、低内聚,因此总体上导致软件质量差


总之,最好通过参数传递值,而不是从EJB访问FacesContext。

请参阅@NathanHughes,我将阅读,我认为这是一个好主意。但这是一个更高层次的背景吗?我认为上下文是每个人都知道的一个附加层。可能是