忍者ブログ

ビーキョウのIT

このブログは99%ののほほんと1%のお菓子でできています。

カテゴリー「Seasar」の記事一覧
  • « PREV
  •  | HOME | 
  • NEXT »

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


SAStruts アーキテクチャ・仕組み

こんちゃ(´・ω・)ノ

お疲れ様です。
今回はSAStrutsのアーキテクチャ?仕組み?動作?
的な部分を簡単にかいていこうかと思います。
ただ結構やっつけなので、間違ってるところがあるかも。




※クリックして拡大してね!


(1) Filter
クライアントからリクエストが届き、SAStrutsの各フィルターが動作する。
フィルターの設定はweb.xmlで行っている。
フィルター説明
EncodingFilterリクエストのパラメータをエンコードするためのフィルタ。
S2ContainerFilterHttpServletRequestやHttpServletResponseなどをS2Containerに登録されたコンポーネントから利用できるようにするフィルタ。
HotdeployFilterSeasar2がJavaのクラスの変更をHOTに認識できるようにするためのフィルタ。
RoutingFilterSAStrutsの簡易なURL(Strutsの.doなどの拡張子を見せない)を実現するためのフィルタ。


(2) ActionServlet
StrtusのActionServlet。
ActionServletはStrutsで唯一のServlet。
ここからstruts-config.xmlを参照して、指定のRequestProcessorを呼び出す。
SAStrutsはRequestProcessorを継承したS2RequestProcessorを呼び出すようにしている。

(3) S2RequestProcessor、ActionWrapper
S2RequestProcessorは、StrtusのRequestProcessorを継承している。
ここからSAStrutsのActionWrapperを呼び出す。
S2RequestProcessorとActionWrapperでそれぞれでどのような処理が行われているかはまだ不明。

(4) ActionFormの設定
ActionFormにHttpRequestの情報を設定する。

(5) Validationチェック
値が設定されたActionFormに対して、チェック(Validation)を行う。
チェック(Validation)する処理プログラムはvalidator-rules.xmlから取得して呼び出す。

(6) Actionの実行
各作成されたActionのメソッドが呼び出される。
値が既に設定されているActionFormがActionのFormに設定されている。

(7) JSP遷移
処理結果をRequestProcessorに設定し、遷移すべきJSPへ遷移する。

拍手[2回]

PR

SAStruts

こんちゃ(´・ω・)ノ

お久しゅうございます。

Seasarプロジェクトで開発されているSAStrutsというものについて。
アノテーションとか命名規約で設定ファイル郡を自動生成してくれるようになった、
Strutsといった感じ。

私はStruts自体触ったことなかったのですが、
これがなかなか便利。

今後はSAStrutsとかS2JDBC、S2CSVなど等Seasarプロジェクトを用いた、
開発の方法とか色々書いていきたいかな。

拍手[0回]


 | HOME | 

カレンダー

03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

最新コメント

[11/13 NEX-C3]
[01/24 R]
[07/30 ビーキョウ]
[07/25 unknown]
[06/24 ブログランキング]

最新トラックバック

バーコード

広告

カウンター

ブログ内検索

プロフィール


HN:ビーキョウ
職業:SI屋(PG、SE)
<自己紹介>
ちゃお(´・ω・)ノ
ビーキョウです。
どんどんスキルアップして、 その中で学んだことを忘れないようにメモ代わり的な 感じで記事を書いていこうという考えです。

なので、適当な部分が多々あるとは思いますが、 なにとぞよろしくお願いします
(´ ▽`)

バナーエリア

Copyright ©  -- ビーキョウのIT --  All Rights Reserved
Designed by CriCri / Photo by Geralt / Powered by [PR]
/ 忍者ブログ