[Seasar-user:10912] Re: [Teeda]InterTypeとInterceptorの仕様

"TAKEUCHI Shinichi / 竹 "TAKEUCHI Shinichi / 竹
2007年 10月 9日 (火) 14:38:44 JST


お世話になります、竹内です。

  ありがとうございます。当方はSeasar2/Teedaを利用した業務システム
のベースとなる部分を設計していることもあり、少々難しくなっている
部分もあります。Layoutに関しては個別の業務機能でなく、ゲストなのか
正会員なのか、職員による代行なのかという種別によって切り替えたり
するするため、業務的なCrossCuttingConcernとなっています。

  もちろん、共通の親クラスで処理することもしていますが、InterType
ならそれすらも不要かなと思って試してみました。限界がわかりました
ので工夫して使ってみようと思います。


On Sat, 06 Oct 2007 15:00:02 +0900
Koichi Kobayashi <[E-MAIL ADDRESS DELETED]> wrote:

> 小林 (koichik) です.
> 
> Date:    Sat, 06 Oct 2007 03:24:09 +0900
> From:    "TAKEUCHI Shinichi / 竹内 伸一" <[E-MAIL ADDRESS DELETED]>
> To:      [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:10897] Re: [Teeda]InterTypeとInterceptorの仕様
> 
> >   回答ありがとうございます。すべてのページクラスにダミーで
> > getLayout() をInterTypeしておいて、そこにInterceptorをかける
> > ことで、複数レイアウトの自動選択をさせようと考えていたのですが、
> > すでに当該メソッドがあればInterceptor、なければInterTypeと
> > 場合わけして実装しないとだめみたいですね。
> 
> 難しくやろうとしすぎているのでは?
> Page クラスの抽象クラスを作ればそこの getLayout() で
> 間に合うのではないでしょうか?
> 
> その InterType は本当にクラスの構造を変更して
> 行う必要があるものなのか,その Interceptor は本当に
> cross-cutting concern なのか,考え直した方がいいのでは
> ないかと思います.
> 
> > てっきりInterTypeで
> > 拡張したクラス定義が作成され、Interceptorは、そのEnhanced
> > クラスを元にしてそこから再度拡張するのだと思っていたのですが、
> > ちがうのですね。
> 
> 二段階で拡張するようなことはしていません.
> 
> >   ところで、TeedaなどのJSF実装は、PageClassに対してUI系の
> > フィールドや、JSFライフサイクル関連のメソッドをInterType
> > して実現していると思っていたのですが、別の方法でやって
> > いるのでしょうか?
> 
> Page クラスにフィールドやメソッドを追加することは
> していません.
> JSF 的には UI コンポーネントツリーというものがあり,
> ライフサイクルを持っているのはこちらです.
> 
> 
> -- 
> <component name="koichik">
>     <property name="fullName">"Koichi Kobayashi"</property>
>     <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
>     <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
> </component>
> 
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
> 

-- 
TAKEUCHI Shinichi / 竹内 伸一 <[E-MAIL ADDRESS DELETED]>



Seasar-user メーリングリストの案内