複合コンポーネントのインスタンスにプライベートで、そのインスタンスが存続する限り存続する「コンポーネントスコープ」Bean、つまり「複合コンポーネント内のローカル変数」をどのように作成できるのか疑問に思いました。
以下に詳細を示し、例を示します。
「計算機」コンポーネントがあるとします。これは、ユーザーが数式を入力し、その値を評価できるようにするものです。オプションで、関連する関数もプロットします。
次のような複合コンポーネントを作成できます。
- 数式を受け入れるためのテキストボックス
- 「評価」と「プロット」という2つのボタン
- 関数をプロットする別のネストされたコンポーネント
それは明らかに自己完結型の機能です。使用したい人が<math:expressionEvaluator/>と言うだけでよいように
しかし、明らかに、実装にはJavaオブジェクト(式を評価するもの、プロットポイントを計算するものなど)が必要です。これは、ビュースコープではなく、このコンポーネントのこのインスタンス専用のBeanである可能性があると思います。または、コンポーネントのすべてのインスタンス間で共有されるリクエストスコープのBean。
どうすればそのようなBeanを作成できますか?それは複合コンポーネントでも可能ですか?