2016-05-31 4 views
0

たとえば、EJBの内部からimportおよびgetCurrentInstanceを使用する代わりに、context.getExternalContext().getRequestLocale()をパラメータに渡す方が良いでしょうか?EJBがFacesContextに依存するのは悪い設計ですか?

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

(私はWeb開発に新たなんだ)

+0

[下位のアプリケーションレイヤーが上位レイヤーを認識しないのはなぜですか?](http://programmers.stackexchange.com/q/198783/7460) –

+0

@NathanHughes I '私はそれを読んでいる(と私はそれが良い考えだと思う)。しかしそれは文脈より高い層ですか?誰もが知っているサイドレイヤーとしてのコンテキストに関するものです。 –

+0

[なぜエンティティBeanをJSFフレームワークで管理してはいけないのですか?](http://stackoverflow.com/questions/25431338/why-shouldnt-entity-bean-be-managed-by-jsf-framework) – BalusC

答えて

1

あなたは3層アーキテクチャとしてソフトウェアシステムを考える場合、FacesContextは(JSFフレームワークの一部である)のプレゼンテーションに属しアプリケーションレイヤーには「0」が割り当てられます。

下位層(アプリケーション)が上位層(プレゼンテーション)に依存する場合、一般に悪いソフトウェア設計です。これは、高結合、低凝集、したがって全体的に劣悪なソフトウェア品質につながる。

EJBからFacesContextにアクセスするのではなく、パラメータで値を渡す方が良いでしょう。

関連する問題