2011-01-05 6 views
1

私はSeamには新しく、仕事中の比較的大きなプロジェクトに取り組んでいます。このアプリケーションは、いつでも1ページで多くのことが起こるという点でかなり複雑です。私はこれをどのように構造化するかを理解しようとしており、いくつかのフィードバックをしたいと思います。Seamアプリケーションのページを分割する

これをベースにする良い例は、Facebook(または類似のソーシャルメディアアプリ)です。 Facebookにはたくさんのものが画面に表示されています。そのすべてのロジックが単一のビューとバッキングBeanにある場合、ファイルはモノリシックなサイズになります。

私はそれを見る方法は、あなたは別のコンポーネントを持っているでしょう。たとえば、Facebookでは、あなたの友人や友人を他の人と共通に見せるためのコンポーネントがあります。招待状、提案などを扱う別のコンポーネントがあります。

これは別の機能です単一のページに表示される場合がありますが、場合によっては別々のコンポーネントでも、最後に関連しています。たとえば、ajaxリクエストを生成するメイン画面の項目(サイドバーの要素ではない)をクリックすると、サイドバーのコンポーネントが自動的に更新されるか、再レンダリングされる必要がある場合があります。

サイドバーコンポーネント以外にも、ページのメインエリアに複数の異なる要素が存在する可能性があります(たとえば、実際には各パネルがページの別々のビューまたは別個のビューである可能性のあるタブ付きエリア)。

私がすべてのものを単一のバッキングビーンまたは類似のもので処理しなければならないのは、醜いでしょう。これらの異種の要素のそれぞれに独自のコントローラ(バッキング・ビーンズ?)があり、そうでないものは私には意味があります。コンポーネントxでアクションを実行すると、コンポーネントyのBeanからリッスンできるイベントが発生し、コンポーネントyが再レンダリングされます。

私が見ることができるアイディアやリソースはありますか?

答えて

2

Seamは、別々のバッキングコンポーネントを使用してページを複数のフラグメントに分割することを可能にします。彼らはかなり独立しているかもしれませんが、相互作用することもできます。

これは、the Seam tutorial at JBossと書籍Seam in Actionから始まります。

あなたが探しているAjaxインタラクションについては、RichFaces Developer Guideを参照してください。

関連する問題