jsfは死んでいますか?

JSFは死んだ!



これはまさに、あるオフィスで開発者を試しに行ったときに聞いたことです。 オフィスで行われていることはトピックトピックではなく、彼らが何を使っているかを知るだけで十分です。 「なぜJSFではないのか」という質問に、私は聞いたことを聞きました。 habrのJSFに関する最新の投稿から判断すると、真実は語っています! いや?



私の名前は何ですか?



まあ、彼は死んで死んだように思えますが、なぜあなたはテープを詰まらせているのですか? しかし、ITはダウンします! インターネットでGrailsとPlayが見つかりました! (春については沈黙を保ってください-私がいなくても滑りやすいです)。 両方とも、金型、基本的なコントロール、ナビゲーションを備えた5ページの投影図を美しく描きました。 終了しました...私たちは、11.2016からJSF 2.2.14(2016年2月から2.2.13 !DEAD!?)でMavenプロジェクトを開き、作業を続けました。



問題



JSFのそれほど大きくないプロジェクトでは、データベースのユーザーにFORM認証を追加する必要がありました。 複雑なことはありません。ここにJPAクラスがいくつかあり、JSFページ、web.xmlで使用可能なロールのリスト、およびsecurity-constraintがあります。 やめて! なぜそんなに複雑なのですか?! Grails and Playで! -いくつかの注釈/メソッドとすべて! ロールのリストが変更された場合のweb.xmlの変更方法!? 私は思った...なぜすべてがSOであり、どのように機能するのですか? 認証とは、ログインとパスワードのペアを調整して、URLを解析し、ユーザーが適切な役割を持っていることを確認するプロセスです。 これまでのところ、すべてが論理的ですが、ニュアンスがあります! 役割の調整は正確にどこで行われますか?! まあ、つまり 文字通り-役割の調整が発生するコードポイントはどこですか?



Grails、Play!など



回答:注釈が存在する場合、それらは検証されます。 非常に失礼な場合、要求処理は次のようになります。



  1. ユーザー生成リクエスト
  2. URLで見つかったコントローラー
  3. コントローラーで見つかった注釈
  4. 役割を確認しました
  5. コントローラーでモデルを準備しました
  6. コントローラーで、表示を選択します
  7. ユーザーにレンダリング


JavaServer Faces(JSF)



回答:なぜ必要なのですか? とにかく見つからない... o_O



これは、JSFでは処理が次のようになるためです。



  1. ユーザー生成リクエスト
  2. URLで見つかった必須ロール
  3. 役割を確認しました
  4. URLで見つかったコントローラー(FacesServlet)
  5. URLコントローラーの検出ビュー
  6. ビューからELによってモデルを準備しました
  7. ユーザーにレンダリング


そして、私は何も理解していないことに気付きました。



JSFとPlayのようなものを比較する方法! またはJSFとGrails? 彼らはただ異なっている...一部の場合-キー要素はコントローラであり、他の場合-ビュー。 一部は-「どのページを描画するか」を決定し、その他は「何を描画するか」を決定します。 「どのページ」と「ページにあるもの」という論争のようですが、本質は劇的に変化しています。 しかし、GETパラメータがビューで宣言されている理由と、リンクが「faces-redirect = true」である必要がある理由を理解しました。



また、任意のロールを使用するには、WebFilter アノテーションを使用して、フィルターを作成する必要があります。



あとがき



同僚、ナレーションでの混乱を許してください。 意図的なテキスト:





また、JSF 2.0では、カスタムタグとフローの適切な実装を「作成」しました。 おもしろい場合は、JSFに関するトピックが非常に時代遅れであるため、喜んでお伝えします... :-(



All Articles