フレームワークStrutsをいじくり倒す人の為のスレ
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
03/04/28 08:14ID:Ub0n1fGRhttp://www.ingrid.org/jajakarta/struts/
http://jakarta.apache.org/struts/
0002ぼるじょあ ◆yEbBEcuFOU
03/04/28 08:20ID:???( ・3・) < ぼるじょあ兄妹がパンパンしながら2ゲットォー!!
( つ∋oノハヽo∈\_________________
) ,ィ⌒( ・3・)
(_(__人__,つ 、つ
0003nobodyさん
03/04/28 12:00ID:???0004みき(^-^) ◆MIKIDyAWSg
03/04/28 16:44ID:???0005nobodyさん
03/04/28 17:37ID:???00061
03/04/28 18:43ID:Ub0n1fGR0007nobodyさん
03/04/28 20:40ID:???なるほど。最近やっとServletを使い始めたオレにはぴったりの勉強材料だ。
0008nobodyさん
03/04/28 20:47ID:Pkujt7AF0009nobodyさん
03/04/28 22:21ID:???>慣れるまで大変だし。
そうでもないと思うぞ。やりはじめは確かに分かりにくいかも
しれないけど、1、2日で慣れたよ。
>ちょっと中途半端って感じかな。
仕様です。
0011nobodyさん
03/04/28 23:37ID:Ub0n1fGR仕事で使っているけど、慣れるまで大変だよ。
Oracle とか IBM とかでも使っているよーなので、努力したいと思うのだが・・・
0012nobodyさん
03/04/29 00:21ID:???0013nobodyさん
03/04/29 09:56ID:6c9ghD2c0014nobodyさん
03/04/29 10:09ID:???JSPやServletなどを知らない人がこのフレームワークをさわるのは難しいかな〜。
つうかそんな融通の利くフレームワークなんて無いと思うけど。
0015nobodyさん
03/04/29 10:18ID:AXvmxaz8どこにそう感じるんだ?
「既存の技術」ってなんだ?
Strutsでまともに組んだことなさそ・・・っつーより、よくわかってなさそ。
0016あぼーん
NGNG001714
03/04/29 10:39ID:8VlbjSE8うん、じつは使ったことないし、よくわかってないんだ(笑)ごめんぽ。
001813
03/04/29 10:59ID:6c9ghD2c実際の処理を担当する Action、表示部分を担当する JSP、これらを統合
する struts-config.xml で構成されている。
ActionForm - Action の関係は割合と捉えやすい。データをロードし
てから編集するときとかは、作業は楽だ。
しかし JSP のコーディングが厄介。あらかじめ用意されている専用
タグを使うのだが、普通に Java のコード書くほうが数段楽だし融通が
きく。
デザイン面は客の要求が厳しいところだし、現在かなり鬱になって
いる。
002013
03/04/29 18:05ID:6c9ghD2cエディタで書けないもののほうが、あとあと困る気がするが。
専用タグが面倒なことは否定しないが、専用タグ使わないと MVC にならない。
0021nobodyさん
03/04/29 18:55ID:???002213
03/04/29 19:55ID:6c9ghD2cずっと最初からエディタで書いているから、ビジュアルな環境自体は不要なデベロッパーが多いと思われ。
それにデザイナーから出てきた HTML を書き換えていく事が多いから、便利ツールがあっても余り役に立たない気がするが?
もっとも、Struts はフレームワークであってツールで無いので、誰かがStruts 用ツールを書いてくれても問題ない。
0023nobodyさん
03/04/30 00:26ID:7R70iZIRIBMのWSADとかいうIDEがそのへんを面倒見てくれるはず。
0024あぼーん
NGNG002513
03/04/30 06:35ID:/Snk6liyonclick='return func(<%=Sample.getID()%>);' はだめだけど、
onclick='<%="return func(" + Sample.getID() + ");"%>);' は実行されるね。
デザインとコンテンツ分離していないな・・・しかし。
0026nobodyさん
03/04/30 10:55ID:sH+8Jb43>onclick='return func(<%=Sample.getID()%>);' はだめだけど、
なぜ動かないかが謎
002713
03/05/01 13:43ID:1itvb5PAStruts1.02 Tomcat4.06 J2SE1.41_02 での動作。
単に Struts タグのパースが甘いのではないかと思われ。
002913
03/05/02 04:03ID:CDnP+fh3知らんかった・・・逝ってきます。
0030あぼーん
NGNG0031nobodyさん
03/05/02 11:45ID:U4GCg6UJDBの抽象化、フォーム項目検査の共通化は似たようなことを自分でやっていたので、見つけたときはちょっと欝入りました(^^;
っつーことで、「フォームから送信された時にアクションBeanをマップして〜」というのは結構サンプルがWebや本にもある
のですが、他のWebなんかからクエリー文字列で送られてきたパラメータの解釈なんてーのはどうやるのでしょう?
これは多分どこかに答えがあると思うのですが、検索できませんでした(T_T)
多分、受け取るだけならbean:parameter でいいんでしょうが、その後のValidatチェックとかはどうすれば? というコトです。
やっぱり、Bean作ってプロパティに入れて、チェックは自分でシコシコと、なんでしょうか? 出来ればValidatorを使いたいの
ですが……。
あと、logic:iterate で、抽出条件などの初期値をbeanに指定するにはどうすればいいのでしょうか?
ワタシ的には
コレクションを含むBeanを定義。プロパティに抽出条件、抽出実行メソッドを定義
↓
JSP内でBean作成。プロパティに抽出条件をセット
↓
JSP内で抽出実行メソッドを実行
↓
logic:iterate にBeanとコレクションを設定。
……で、いいかなぁ、と思っているのですが「JSP内にスクリプト書いちゃっていいのかなぁ? それともタグライブラリで
出来るのか?」と思い、まだ試していません。多分、これもどこかに答えがある(絶対みんな使うはずだ(^^;))と思うのですが、
これもまだ検索できていません。
以上、「このページを見ろ!」だけでも教えていただけると助かります。よろしくお願いします。
0032nobodyさん
03/05/02 13:04ID:NXr20aw7Struts使うんなら基本的にJSPには直接アクセスさせないで、必ずActionを経由
するようにしないと、あちこち破綻しまっせ。
003331
03/05/02 13:21ID:U4GCg6UJ>Struts使うんなら基本的にJSPには直接アクセスさせないで、必ずActionを経由
>するようにしないと、あちこち破綻しまっせ。
他のWebや本でもそう書いてありますね。ということはやはりbeanタグを使うのでしょうか?
そのあたり、どこかに書いてないモノでしょうかねぇ( ´∀`)
※探してるけどやっぱり検索できない(T_T)
0034nobodyさん
03/05/02 13:55ID:L5fY5Do4ちなみにバージョンは?
003531
03/05/02 14:41ID:U4GCg6UJすみません。多分「ちゃんと」は勉強してません。本とWebの拾い読みです(拝)
バージョンは1.1を使おうと思っています。
0036nobodyさん
03/05/02 15:53ID:L5fY5Do4003731
03/05/02 16:21ID:U4GCg6UJも、もう少し詳しく(^^;
0038あぼーん
NGNG0039nobodyさん
03/05/02 23:45ID:CDnP+fh3GETのオプションも ActionForm の中に入ると思った。
Action に飛ばすのが推奨だけど。
0040あぼーん
NGNG004131
03/05/03 03:10ID:4TfEEb3Wえと、ごめんなさい。誤解があればご指摘を。
……それは、「hogehoge.do?hanya=1」という風にURLで呼び出す、ということでしょうか?
で、表示に必要な情報はBeanに入れてセッションで保持して次のページで表示、ということでしょうか?
うーん、自分で書いてて、何かが違うような気がする……
0042nobodyさん
03/05/03 16:02ID:t0/6rwZ0ActionForm からは Action を必ず呼び出すのが推奨だが、
リンクさせたいだけなら、<%= %> とコードをかいても、
<html:link> タグを使ってもいい。
0043nobodyさん
03/05/04 01:07ID:M8Vf8h8DActionForm から Action を呼び出すって...
もうすこしわかってから人に教えようよ...
0044nobodyさん
03/05/04 02:08ID:tPLquQaPActionFormと結び付けられていないJSPから、Actionを呼び出すの?(笑)
0045nobodyさん
03/05/04 02:46ID:M8Vf8h8D42の人ですか? 本格的にわかってないのかな...
・ActionForm と Action には呼び出し関係はありません
・ActionForm は Action の引数として渡されます
・ActionForm にリクエストパラメータを設定して
Action を呼び出すのは ActionServlet です
0046nobodyさん
03/05/04 03:49ID:tPLquQaPStrutsいじったこと無いのかな...
0047nobodyさん
03/05/04 03:55ID:tPLquQaPとはいいつつ、意図の補足。
>>41 の話をきいていると、JSP ファイル間でリンクを貼りたいと
いいたいように見えるが、Struts では Struts に従った JSP ファ
イル(ActionForm と関連付けられたフォームを持つ)からは、
Action での処理に移るのが推奨になっている。
だから struts-config.xml で ActionForm を連携している JSP
ファイルからは、他の JSP ファイルに直接リンクを貼るのは望ま
しくないと書いた。
> Action を呼び出すのは ActionServlet です
これ自体は間違っていないが、ActionServlet を自分で書かないよな?
004831
03/05/04 13:46ID:p4vaAgcq>>41 の話をきいていると、JSP ファイル間でリンクを貼りたいと
>いいたいように見えるが、Struts では Struts に従った JSP ファ
>イル(ActionForm と関連付けられたフォームを持つ)からは、
>Action での処理に移るのが推奨になっている。
大体あってます。が、「JSP同士」では無く(まぁそういうこともあるでしょうが)
1.他のサイトからリンクされてる
2.スタティックなHTMLからリンクしたい
3.ビュー側で初期値を与えたい
4.その他、「諸般の事情」でどうしても初手はGETでしかリクエストできない
ようなとき、抽出条件その他の初期値を与えたい場合、どのように処理をすればいいのか、ということです。
>>41では、抽出結果をいちいちセッションで保持するのはメモリの無駄のように思えましたが、考えて見れば
ビュー側で表示が終わったら明示的に消去すればいいんですよね? だからやっぱり>>41で書いたように
hogehoge.do?hanya=1でGETでリクエスト
↓
Actionクラスで条件をValidatしビジネスロジックを実行
↓
抽出結果をBeanに格納しセッションで保持
↓
ビュー側でBeanの内容を表示
↓
表示し終わったら、セッションの内容を明示的に破棄(Nullを入れる)
というストーリーでいいのかな、と思いましたが、これだと3.が実現できないんですよね。
どうでしょう、こういうことをした人はいます?(^^;
0049nobodyさん
03/05/04 18:56ID:tPLquQaP>ビュー側で初期値を与えたい
ActionForm に初期値をセットすればいいのだと思われ。
外部から直接、〜.do にアクセスが飛んだ場合でも ActionForm の
インスタンスは作成される。
コンストラクタか、初期値でモゴモゴっと処理してしまえばよい。
※ ただし推奨方法なのかは謎
0050あぼーん
NGNG0051あぼーん
NGNG005231
03/05/04 23:36ID:p4vaAgcqそうか、基本のActionFormは作っておいて、おっしゃるとおりコンストラクタか、初期値を設定するメソッド
(まぁ、グローバルなプロパティでもいいんでしょうが)をオーバーライドして、ビューの数だけ継承しながら
作っていけばいいんですね?
出来ればビューだけで解決したかった(HTMLデザイナーに微調整は全部やらせたかった(^^;))のですが、
考えて見れば(MVCの概念では)抽出条件とかってビューには含まれませんものね。
了解しました。この考え方でプロトタイプを作って見ます。アドバイスありがとうございました(拝)
0053nobodyさん
03/05/05 12:27ID:JAcSDFlcそれを使わされる下の人間いるの?なんか可哀想だな(ゲラ
0054あぼーん
NGNG■ このスレッドは過去ログ倉庫に格納されています