5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

Servlet/JSPのフレームワークを語るスレ

1 :デフォルトの名無しさん:01/10/02 00:36
厨房お断り。Servlet/JSPのアプリケーションフレームワークを語るスレ。
Strutsなどの既存フレームワークの利点・欠点から語り始めませんか?

2 :デフォルトの名無しさん:01/10/02 00:45
フレームワーク、流行り過ぎだよ。

Struts使ってるけど、自分とこで作ってたのと同等程度の機能だった。
それでも自社開発と比べての枯れ具合とか、
今後のメンテのことを考えて移行中……。

いまさらないとやってられないけど、
フレームワークフレームワークって闇雲に騒ぐのって、
どうなのよ?

3 :デフォルトの名無しさん:01/10/02 00:49
昔C/S全盛のころ、GUI用のフレームワークが流行ったと思う。
いまはMSだとMFCが一帰着点だと思うけど、たとえば、MacのPowerPlantなんてMFCよりも非常に美しいと思う。

いまのWeb用のフレームワークもそんな美しいフレームワークはないものでしょうか?

4 :デフォルトの名無しさん:01/10/02 01:18
MFCをフレームワークっていうかな?
swingをフレームワークっつてる感じ?

Enhydraどうよ。サーバから各種フレームワークまで
全部自分の中で閉じてるみたい。

5 :デフォルトの名無しさん:01/10/02 01:33
>>4
ライセンスやら、開発が継続されんか?とか不透明で
いまのところ手が出せない

6 :デフォルトの名無しさん:01/10/02 01:40
1-Webやら本やら雑誌たらを読んでると、
2-「いっちょ使ってみるか!」と思って、2日ぐらい頑張ってみる。
3-「うーーん、さほどでもないなぁ」と思って、使うのをやめる。

↑これの繰り返し、うーむまずいなぁ

7 :1:01/10/03 00:09
はぁ・・・・。
もうちょっと議論が深まると思っていた・・・・。
やっぱり2chは所詮2chか?

8 :デフォルトの名無しさん:01/10/03 11:46
>>7
そんじゃさ、とりあえずあんたの知ってるフレームワークの比較でも書いてみてよ。
おれんとこ、アホが書いた自前のフレームワークがクソなんでなんかいいのがないか物色中だから。

オレの感覚だとStruts程度じゃ、自前で作りこんだほうがいいってカンジかな。
TPOにあわせづらいっつうか。

9 :デフォルトの名無しさん:01/10/03 16:40
Strutsってそんなにクソなの?
おれいつも場当たり的にやってたから、
それ使おうかなって思ってたんだけど。

それよか大規模なWebアプリの開発はどうしてるのか
知りたいよ。おれなんてホントに小規模なものしか
やったことがないからさ

10 :8:01/10/03 18:15
>>9
いや、クソではないよ。
使いようによっちゃいいものだと思うよ。
ただ、その「使いよう」にいまいちマッチしないというか。
ここには使える、と思うんなら使っちゃえばいいんじゃん?

大規模っちゅうと、どのくらいからかねぇ?
オレもちっちゃいのしかやったことないや。

11 :デフォルトの名無しさん:01/10/03 18:21
ついこの間まで多分1000人月超の某Webアプリケーションプロジェクトを
やってたけど、担当してたところは、ちっちゃいものとなんの変わりもなし。
つまんなかったYO!

12 :デフォルトの名無しさん:01/10/03 19:31
>>4
Enhydra って各コンポーネント間の依存性はどうなんすか。XMLC だけ使うとかって可?
MFC じゃないけど、フレームワークってあまりにも閉じすぎている傾向があって
それに依存してしまう怖さを拭い切れない。

>>8
誰がやっても割と似たようなものになってしまう所を共有しましょうってのが
フレームワークだとすると、Struts はまさにその目的に適っている。
大した機能は無いけれど、少なくともテストとドキュメントの手間は省けるし。
ただ Taglib 使ってるってのが微妙で、古い servlet engine な仕事だと
ダメなのが痛い.

13 :8:01/10/03 22:55
>>12
目的にはかなっているんだけど、もうちょっとシンプルでいいんではないかと。
ベースのサーブレットのあたりは結構使えると思ったんだけど。
Taglib自体がまだ成熟してない感じなので、フレームワークでTaglibを使うのがどうかなって。

14 :デフォルトの名無しさん:01/10/04 00:10
>>13
富士通のINTERSTAGE用のフレームワークってTaglib使ってるとか
宣伝記事にあったような。
フレームワークと呼ぶかどうか知らないけど,そこそこ大きなトコでは
それなりに枠組みみたいなものはもってるんじゃない?
住友電工の楽々とか,IBMのWACSとか聞いた事があるが。

15 :デフォルトの名無しさん:01/10/04 02:23
フレームワークって、類型的コード/設計を省くためのもの
というのがまずはありますな。でもそれだけじゃあ、
縛りのキツい高機能(?)ライブラリと似てしまう。

で、それ以上のことを目指してみて、それじゃあもっとなにがしかの
ドメインに寄ったフレームワークってのを目指してみるものの、
やっぱりなかなか使いまわせるフレームワークにはならず。
そりゃドメインに寄れば汎用性とはトレードオフになりますやね。

Weblogic Commerce Server みたいなのはフレームワークっつーのかな。
なんとなく違うような気がするんですけどね。ミドルウェアなのだろか?

考えるほどにフレームワークってなんだかわからん。<アホの考え休むに似たり
"Not invent here"とか云うつもりはないつもりなんだけど、
どうしても車輪を何度も開発しているような気がしてならない。

うーん、全然整理されてない……とか言ってみるテスト。

16 :デフォルトの名無しさん:01/10/04 18:43
オブジェクト指向による再利用の為の デザインパターン
によれば・・
○アプリケーションプログラム
 アプリ
○ツールキット
 あらかじめ定義さえた1つあるいは複数のライブラリのクラス
○フレームワーク
 ある特定のソフトウェアを対象にした再利用可能な設計プロダクトを
 構成するクラスの集合

ちなみに設計の難易度は
アプリケーション<ツールキット<フレームワーク
だそうだ。

17 :デフォルトの名無しさん:01/10/04 19:40
>>16
アプリなんて作っちまえばどうにでもなるけど、
フレームワークは考え抜いて作らないといけない。

実際にアプリを作るときにはどうしても泥臭いこともしなくちゃいけないこともある。
でも、フレームワークを作る側はあくまで理想を追い求めて泥臭いことをさせないようにしたい。

どこで妥協するかを見極るにはセンスと経験が重要だろうね。

18 :半角文字列:01/10/04 21:14
1>
所詮2chは2ch
2chと言えば半角板くらいしか見んけど
最近気になっている分野だったのでマジレス
Avalonはどうかや?↓

アプリケーションサーバフレームワークAvalon
スタンドアローンのアプリケーションは作らないという
地味なプロジェクト。
Tomcat4.0,Cocoon2等の技術のバックグラウンドは
このプロジェクトで生み出されているらしい。
http://jakarta.apache.org/avalon/index.html

ところで、XMLやXSLT使ってる人っています?
データは一貫してXMLを使って、画面の生成にはXSLTを使うというのが
データ、ロジック、ビューを分けると言う最近の流れからして
かなり先進的だと思うのだけどどうだろ?
Cocoonなんかはそれを実践しているという意味で凄いと思うけど↓
http://xml.apache.org/cocoon2/uc2.html

HTMLにコードを埋め込むような方法は
JSPでなくても大昔からPHPというものがあるしね。

19 :デフォルトの名無しさん:01/10/04 21:37
WebObjectsマンセー

20 :デフォルトの名無しさん:01/10/04 22:04
WebでXSLTやりたいならこれが便利で簡単。
ttp://www.baykit.org/
Baykit Stylesheet Broker
XSLTサーブレット

21 :半角文字列:01/10/04 22:31
>>20
BSBはいいとして...

>Extend it!
何これ?
日本のオープンソースコミュニティは
この程度の物しか作れんの?

22 :デフォルトの名無しさん:01/10/04 22:41
>>21
目標自体がしょぼいってって言うなら同意しないでもない。
でも、デザインや物の出来は悪くないと思う。

23 :半角文字列:01/10/04 23:39
>>22
まぁ、自ら規格を提案して実現してゆくような団体は
日本ではとても貴重なので、
素直に応援するべきなのかも知れないが...
(TexHexはちょっと興味あるかも)
しかし、単にDOMやXSLTがややこしいから
もっと簡単な物を作ってしまおうでは方向性が安易すぎるのでは。
個人的にはオープンソースのXMLネイティブDBをキボンヌ
実際どんなものか私もよく知らないけど
いざ実装にかかると並列処理だとかトランザクションの管理だとか
糞みたいな問題に次々に直面しそうで面白い気がする。

24 :デフォルトの名無しさん:01/10/05 00:00
>>18
Avalon はなにしろ servlet/JSP とは別の流れなので、
今時の標準化路線を思うと採用に躊躇する。
あとドキュメントがすごいマニアック。オブジェクト指向マニア垂涎の一品。
他のプロジェクトの下地を生むというのは納得できる。
でも Getting Started がなかったりとかで一般軟弱プログラマからすると
使う気には到底ならない。

というわけで、Avalon は "読めども使うな" ということでよろしいでしょうか。

25 :デフォルトの名無しさん:01/10/05 01:10
>>14
何それ?そんなの聞いたことある人いる?
説明きぼーん。

26 :半角文字列:01/10/05 07:20
>>24
ですね。"読めども使うな"
開発者自身も、それを意図していると思われ

27 :半角文字列:01/10/05 07:26
というよりは、Avalonのコンポーネントを丸々
コピーして使うのではなくて、
その仕組みや目的を理解した上で、
実際の業務で役立つと判断したなら
自分の目的に合うように作り変えて使えばいい
ということでないかな?

28 :デフォルトの名無しさん:01/10/05 09:47
>>21
百人一首やったけどまともにうごいてないような

29 :デフォルトの名無しさん:01/10/05 19:07
Servlet/JSPフレームワークの
データ、ロジック、ビュー
って、それぞれM,C,Vでいいんですか?
マジレスきぼんぬ

30 :半角文字列:01/10/05 20:30
>>29
JSPで実際にMVCのアプリケーション作った方なら分かると思うけど
Model->JavaBeans/EJB
View->JSP
Controller->Servlet
とした場合、MVC全てにロジックが含まれてしまうので、
データ、ロジック、ビューを分けるというのとは違うと思う。
Model->XML(DOM)
View->XSLT
Controller->Servlet/XSP
の方がデータとロジックが比較的すっきりと分かれるのでないかな
ただDOMをマルチスレッドで使うのには
いろいろとむふふなテクニックが必要かも

Strutsはどうかな?
実は趣味でちょっとつついてみたことくらいしかないので、
実際の業務で使うとどういう物が出来上がるのか興味あります。
経験ある方キボンヌ

31 :29:01/10/05 21:00
>>29

では、JSPがBean(仮にA)のプロパティを取得して表示する場合、
そのBean(A)のプロパティにデータを設定するための
Bean(仮にB)があった場合、

Bean(B)はModelですか?

32 :デフォルトの名無しさん:01/10/05 21:02
31の
>>29は、>>30の間違い。鬱ダ氏

33 :半角文字列:01/10/05 21:49
>>31
例えばBのメソッドがサーブレットから呼び出されて、
それをきっかけにAに対してアクセスするのであれば、
Bはコントローラということになるのでは。
あるいは、Bがタイマーみたいなもので、
別のスレッドから自発的にAにアクセスするのであれば
Bは一種のモデルということになる。
Swing等のGUIでBが画面の更新も行う場合は、後者の場合も
Bはコントローラということになるでせうね。
MVCというのは、役割上の分け方の話だからね。
別にBeanやJSPをコントローラとして使っても構わないし、
その方が便利な状況もあると思う。

34 :デフォルトの名無しさん:01/10/05 22:07
>>33

なるほど。
サーブレットがBをリフレクションで生成して、
Bにメッセージなげてるから
前者ですね。
Bのクラス名をXXXControllerにしてたから、
自前のフレームワークが、イタイのかとオモタヨ。
しかし、smalltalkのMVCと混同すると、混乱する・・・

35 :半角文字列:01/10/05 22:48
>>34
ちと説明が不正確だったかも。
前者の場合でもAにとってBが不可欠というような依存関係があれば、
Bはモデルということになるかも。
例えばAとBのセットで1つのデータ構造を構成している場合がそれ。
Bが単にサーブレットのヘルパー(例えばVisitor)であればBはコントローラ。
後者の場合も、もしもBが単にシステムの時計とAの橋渡しをするような
オブジェクトで、Aにとって不可欠でなければコントローラということになるかも。

36 :デフォルトの名無しさん:01/10/05 22:50
Strutsは
遷移等のマッピングにXMLを導入しています。

Documentには、
「JavaClassでもいいが、あまりに退屈だから」
と記されています。
自作フレームワーク等に導入された方おりましたら、
使ってみて何かよかったことありましたか?
マジレスキボンヌ

37 :デフォルトの名無しさん:01/10/05 23:16
>>35

前者で、全く依存はないので、コントローラですね。

38 :Ruby!:01/10/05 23:22
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Del厨断末鬼の叫び!!!
拙い言いがかりからRubyを必死に煽ろうとしたDel厨が逆襲を受けて死亡!
理論的にDelphiはRubyの足元にも及ばないことが証明された!!!
「Ruby撲滅スレ」
http://piza2.2ch.net/test/read.cgi/tech/1001125342/
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆

39 :デフォルトの名無しさん:01/10/07 01:09
安芸てみました。

40 :デフォルトの名無しさん:01/10/07 12:18
>>25
仕事で調べる機会があったので。
住友電工のやつ http://www.sei-info.co.jp/fra_top.html
日本IBMのは売り物じゃなくてSI用コアパッケージ(著作権はIBMだが
ソースコードを提供する)ってこの前セミナーでいってた。
興味があるならIBMの営業に聞いてみれば?

41 :デフォルトの名無しさん:01/10/08 21:49
あげとこ・・・

42 :デフォルトの名無しさん:01/10/08 22:09
フレームワークネタって何時まで持つかね?
「使えねー」って認識が広まるまで。 

43 :デフォルトの名無しさん:01/10/08 22:15
>>42
なんなんだおまえ、
そこらじゅうにクソレスしまくってやがるな。

44 :デフォルトの名無しさん:01/10/09 03:40
42は頭弱すぎ。
吊るしあげ

45 :デフォルトの名無しさん:01/10/09 19:03
フレームワーク設計経験者で、
点呼でもしてみる…? 続くか分からないけどとりあえず1

46 :デフォルトの名無しさん:01/10/09 20:28
どのレベルからフレームワークと呼ぶか、自身の考えも
付けないとよくワカラない話になりそう

47 :デフォルトの名無しさん:01/10/10 10:09
>>46

クラスライブラリの先。
「Javaプログラムデザイン」でいう、フレームワークだよ。
言語は何でもいいけど。
基本的に、ユーザは、フレームワークのあるクラスを継承することになるかな。
例.
J2EEフレームワーク、JUnitフレームワーク

48 :デフォルトの名無しさん:01/10/11 02:52
>>45
2。一応J2EEフレームワークを作ってます。
が、「どんどんバージョンアップしれ!」というのが上からの方針なので、
しかも下位互換性ないので、それでもフレームワークってゆーのかな、
と結構疑問。
コードレベルじゃなくて設計の再利用としてはかなりこなれてきてるけど……。

49 :デフォルトの名無しさん:01/10/11 13:39
>>48

もしかして、
アプリケーションサーバで、J2EE仕様実装されてる方ですか?

50 :デフォルトの名無しさん :01/10/11 14:23
>>48
jbossについてはどう思いますか?

51 :48:01/10/12 02:35
ああ、ごめんなさい。J2EE「アプリケーション」のフレームワークです。
J2EE「コンテナ」(?)ではないです。
//EJBなら「コンテナ」でいいんだろーけど、J2EE「コンテナ」とは云わんか。

52 :デフォルトの名無しさん:01/10/13 15:13
ec-oneのcFrameWorkってどうよ

53 :デフォルトの名無しさん:01/10/14 03:16
Turbineってどう?

Strutsに比べて(比べるものではないかも)
機能が多すぎるような感じで、
パッと見ただけではさっぱりです。

使用者の感想希望

54 :デフォルトの名無しさん:01/10/15 00:54
strutsをまじめに使ってみようと思った。
ついでだからTomcatも4.0にしたら、なんだかいろんなAPIがついてくるじゃない。
おぼえることがおおいなぁ・・・

そういやstrutsのGUIコンソールがあるのね。

55 :デフォルトの名無しさん:01/10/17 16:43
定期あげ

56 :デフォルトの名無しさん:01/10/17 17:19
チームで開発する場合。
Strutsとか、できあいのフレームワークを他のプログラマに使わせようとしら、
プログラマはそのフレームワークについて勉強しなくちゃいけないよね。
各人のレベルはまちまちなんで、その勉強させるプロセスが問題だと思うなぁ。
ってことで、俺的にはドキュメントが英語のヤツは却下になってしまう。
自分でフレームワークを完全に理解できればいいけど、そうもいかない。
レベルの低いプログラマにでも理解できるようなのってないかなぁ。

57 :糞レスすまん:01/10/17 17:44
Struts って何て読むの?

58 :デフォルトの名無しさん:01/10/17 18:02
>>56

一般的に言って、フレームワークについては
そんなに勉強する必要は、無いのでは?
サンプルコードみせてなんとかなるらない?

59 :58:01/10/17 18:04
鬱。
× なるらない?
○ ならない?

60 :デフォルトの名無しさん:01/10/17 18:37
>>58
サンプルを書いてそれを見せても、なかなか理解してくれないんだよ。
おれのサンプルが悪いのか、メンバーのレベルが低いのか。
どっちも、かなぁ・・・
結局、フレームワークは自分で作ってそれを使いまわしてるよ。
中身を全部知ってるぶん、メンバーにフレームワークを学習させるのがラクなんだよね。

61 :デフォルトの名無しさん:01/10/17 18:40
稲垣メンバー(懐かしいな)に交代

62 :デフォルトの名無しさん:01/10/17 18:42
それならあなたがそともののフレームワークを完全に理解すれば
いいのでは?そしたら自分の物として説明できるっしょ。

フレームワークといってもソースコード付きのものは
ブラックボックスじゃないんだから中身を理解することも
大事だと思うよ。

63 :デフォルトの名無しさん:01/10/17 19:11
>>58

俺は、最初クラス図とシーケンス図で説明して、
「サンプルコードくれないとわかんねーよ」
って罵声を浴び、
次に、サンプルコード渡して、10分くらい説明したら、
理解してくれたけどなぁ。
で、リリース後の今でも、その人達は、
フレームワークが何やってるなんて知らないし、
気にもしてないヨ。
この実装する側の責任の軽さ?が
フレームワークの本質だとおもうんだけど違う?

64 :デフォルトの名無しさん:01/10/17 19:12
とはいったもののフレームワークを理解するのって大変だなぁ。
実稼動のコードにも関わらず対して理解しないで使うのって
危険だよな。でもそんな時間なんてあまりない。最初は大変と
割り切ってがんばるしかないかな。

65 :63:01/10/17 19:13
間違えた。

× >>58
>>60

66 :糞レスすまん:01/10/17 19:40
で、Struts って何て読むの?

67 :デフォルトの名無しさん:01/10/17 23:55
Strutsはドキュメントになっていない部分があったり
英語が理解できなかったり(w
するので結局ソース読んだ方がはやい

68 :デフォルトの名無しさん:01/10/18 00:13
今、Struts見てるけどドキュメントなんて何もないんだねw

69 :デフォルトの名無しさん:01/10/18 01:39
>>68
サンプルがあるだろう。
あれは参考になるよ

70 :デフォルトの名無しさん:01/10/18 02:29
フレームワークとはなにか?
というのを明確にのべているものはあるのか。
僕の定義だと、
「利用するプラットホームから、ユーザーの要件を作りこむ間の骨格を用意しておくもの」が
フレームワークだ。
たとえばJ2EEのフレームワークというのは、J2EEというプラットホームを利用して、ユーザーの求める
Webアプリケーションが作る骨格が用意できればいいのだ。
ユーザーの求めるものは、画面をAppletで作ってくれとか、そういう問題ではない。
商品検索機能がほしいとかショッピングカーとがほしいとか。
ユーザーの要件に依存されない部分、たとえば、検索ボタンを押したら、検索画面にいくとか
印刷ボタンを押したら印刷されるとか、プラットホームが用意していなくて業務に依存しない
ところまでを用意しているのがフレームワークといえるだろう。

フレームワークがいいかどうかというのは、アーキテクチュアで決まる。
実装でのバグの少なさも、品質という面で評価基準になるが、
それはライブラリでも同じ。
フレームワークの評価としてはアーキテクチュアを主眼に置くべきだろう。

MVCアーキテクチュアを採用することには異論ないだろう。
有名なフレームワークはほとんどMVCアーキテクチュアを使っている。
じゃあ、もう少し具体的にみて、それぞれのアーキテクチュアはどうなっているか?
そのあたりが分かってないと話しても始まらないと思うぞ。

私は、Strutsは完全なMVCアーキテクチュアじゃないと思うね。
Servletの実装あたりは参考になるけど。
PetStoreは理想を目指してるとは思うが、ちょっとぐちゃぐちゃだな。
アーキテクチュアに統一性がない。

71 :デフォルトの名無しさん:01/10/18 02:36
いまどきMVCを出してくる奴がいるとは思わんかった・・
思わんかった
完全な?完全とはなんでしょう?

72 :デフォルトの名無しさん :01/10/18 02:47
フレームワークの定義なんてどうでもいいよ。そういうのは
学者さんに任せておけばいい。おれの意識としては、使う側を
いい意味で規定するのがフレームワーク。何も拘束しないのが
クラスライブラリ。間違ってるのかもしれないけどね。

もっとJavaに関するライブラリ批評のようなスレになって欲しいな
半年ぐらい前に切望したスレでもあったし。

73 :デフォルトの名無しさん:01/10/18 17:23
関係無いようで、結構面倒だとおもわれる
ブラウザの戻るボタンの処理ってフレームワークとして
どうやって対応してますか?
マジレスきぼーん

74 :デフォルトの名無しさん:01/10/18 21:40
<% %> JSPが使える、フリーのサーバないですか?
もしくは、有料でも可

75 :デフォルトの名無しさん:01/10/18 22:08
>>74
スレと関係なさすぎ。
"Tomcat"でgoogleすれ。or 開発用なら無料のJRunやResinとかな。

76 :70:01/10/19 00:34
>>71
じゃあMVC以外何を使うというんだい?
MVCが20年前からあることくらい知ってるよ。
MVCを採用するのは当たり前っていいたかっただけ。
君はWebシステムでもちゃんとMVCを守って作れるの?

>>完全な?完全とはなんでしょう?
MVCの言っている規則に反しているところだね。
そういういみで完全にMVCを守ってないってこと。
StrutsはActionクラスにActionMappingを引数にしているところがダサい。
MVCになってますっていってもちゃんとなってないこと多いんだね。結局。

>>ブラウザの戻るボタンの処理ってフレームワークとして
>>どうやって対応してますか?
まぁ、Strutsみたいに、Tokenでもいいが...まったく戻るボタンが
使えなくなるのでダサいね。
もっと本質をつかめばシンプルに楽にできるのに...
どうしてるかはここでは言えない。
とりあえず、Struts調べてみればどんなことしてるかわかるよ。
Token使うだけで楽になるしね。

77 :デフォルトの名無しさん:01/10/19 01:53
Tokenはひとつしか定義できないので
どこで発行されたTokenでもvalidと認識してしまうところがつらい。

78 :デフォルトの名無しさん:01/10/19 17:47
>>76

CommandパターンのUndoとかではない?
ヒントくださいな。

79 :デフォルトの名無しさん:01/10/19 18:08
>>76

マジで尊敬してます。

80 :78:01/10/19 18:11
最悪だ・・・鬱。

79は、
マジで尊敬してます。
ヒント下さい。
の間違い。

81 :デフォルトの名無しさん:01/10/20 00:56
Tokenはダブルクリック対策にもなるぴょん

82 :76:01/10/20 02:00
>>72
>使う側をいい意味で規定するのがフレームワーク。何も拘束しないのが
>クラスライブラリ。間違ってるのかもしれないけどね。
学者が考えるほどのことはないと思うぞ。
欲しい機能を一つのクラスで提供するクラスを集めたのがライブラリ。
まぁ、共通関数の集まりに近いものは有るね。
複数のクラスである仕組みを提供するのがフレームワーク。
フレームワークは、拡張性や柔軟性を提供するためにパターンを利用したものが多いね。
ユーザーの操作(event)に対して画面を更新するのにObserverPattenを利用したりね。
ライブラリは、使いたいあるクラスについて使用を理解すれば使えるが、
フレームワークはアーキテクチュアを理解しないと使えない。
J2seはライブラリの集まりだけど、
J2EEのEJBなんかはそういう意味でフレームワークといえるね。
僕は、EJBよりもうちょっと上位の仕組みをフレームワークといいたいが。

>>78
本質的にはhttpはコネクションレスなプロトコルだから、
みんな苦労してるんだよね。
だから、SessionIDを使ってsessionを管理している。
TokenはSessionIDを使い捨てで毎回変えるのと同じだね。

>>77
確かにtokenと聞くと連番を使ってしまうようなイメージだが。
SessionIDみたいに重ならないようにすればいいんじゃない?
単純なとこでは、SessionID+連番とか。

>>80
申し訳ないが、上の発言でヒントとさせてください。

83 :76:01/10/20 02:46
>>78
>CommandパターンのUndoとかではない?
うーんちょっとちがうな。
DoubleClickの対策ができるわけじゃないでしょ。
SuspendできるCommandは使うけど。ログインしてないと使えないcommandは
Suspendさせておいて、ログインが成功したらexecuteするとかね。

84 :デフォルトの名無しさん:01/10/20 06:22
>>82
それを言うならステートレスでわ?

85 :77:01/10/20 07:17
>>82
A1でToken生成→A2で検証、削除。
B1でToken生成→B2で検証、削除。

という流れを想定している場合でも、

直接URLを入力されてA1→B2となった場合に
Tokenでははじけないでしょ?

結局Tokenにもう少し情報を持たせるようにして
解決しようと思ってるんだけど。

そうそう、nightly buildではToken処理に
synchronizedが使われてるね。

86 :76:01/10/20 13:38
>>84
ああ、そっちのほうが正しい表現だ。馬鹿だね俺って。
ご指摘ありがとう。

>>85
>結局Tokenにもう少し情報を持たせるようにして
>解決しようと思ってるんだけど。
Strutsでは、TokenをSession単位で持っちゃってるからね。
Action単位で持つようにすればスゴーク便利だと思うぞ。
ああ、大ヒントだな。こりゃ。
来るべき時がきたら、僕のアイデア言ってもいいんだけど、
いまはだめなんだよね。というわけでこれ以上いえません。

>そうそう、nightly buildではToken処理に
>synchronizedが使われてるね。
そういう考慮はひつようだよね。情報ありがとう。
nightly buildまでは、追ってないんで...
Strutsはかなり参考になる部分はあるが大規模な開発には使えないね。
一人で全部作るんならいいけど。
うちのかいしゃで採用することはない。
だいたい、みんながstruts-config.xmlつつかないといけないし、
カスタムタグに頼りすぎ。
デザイナーの作ったhtmlなんかいちいち変換しなきゃいけないしね。

でも、実装面ではほんといろいろ参考になるよ。

87 :デフォルトの名無しさん:01/10/20 19:17
>>86
禿同

でもStrutsを使ったWebシステムの開発実績って、結構欧米では多いみたい。
少数精鋭で作るんだったら、OKじゃない?

88 :デフォルトの名無しさん:01/10/20 21:47
>>87
IBMのWebSphere Application Server内のWeb管理用ツールはStruts使ってる。

89 :デフォルトの名無しさん:01/10/20 22:35
・要求定義が最初から明確に決まる。
・画面のデザインが凝ってなくてよい。
のようなアプリだったらStrutsはいいね。
管理ツールとか、開発者が全部画面作れるものにはかなり使える。

90 :90:01/10/22 06:15
今、少し試してみているのですが、みなさんどのように勉強されているのでしょう?

検索しても解説サイトのようなものはないみたいですし、雑誌などにも簡単な入門の
記事くらいしかないみたいですし。

やはり直接ソースを見ているのでしょうか?

91 :90:01/10/22 06:26
>>90 で試しているというのは Struts のことです。
Turbine、Avalon などの話も聞きたいですが。

92 :デフォルトの名無しさん:01/10/22 07:45
>>90
日本語ならdeveloper worksの記事は読んだ?
http://www-6.ibm.com/jp/developerworks/java/010824/j_j-struts.html

93 :デフォルトの名無しさん:01/10/22 09:59
>>83

DoubleClickの対策って何ですか?
SingleClickとDoubleClickって動作的に
同じだとおもうのですが。

94 :デフォルトの名無しさん:01/10/22 16:07
>>66
自分は普通に「すとらっつ」と呼んでる
…なぜ誰もレスしないんだろう。不安になってきた。

95 :94:01/10/22 16:10
不安だったので調べてみたが
http://dictionary.goo.ne.jp/cgi-bin/ej-more_print.cgi?MT=strut&ID=EJ-294100.txt&sw=0
なんか変な意味なんだな(w

96 :デフォルトの名無しさん:01/10/22 23:50
>>95
そういうのも込められてると思うけど
「支柱」とかそっちの意味がメインだと思うよ

97 :デフォルトの名無しさん:01/10/25 00:41
>>86
結局ActionMappingとActionForwardを拡張して
Tokenの設定をstruts-config.xmlで
できるようにしました。
今回のプロジェクトはこれで大丈夫、かな。
Token周りはまだまだStrutsも開発途上という
感じを受けるね。
次のバージョンではどうなるかな?

98 :76=83=86:01/10/25 02:56
>>93
Double Click対策は2回同じリクエストを飛ばしたらどう処理するか
Duplicate Form Submission Problem とも言うね。
例えば注文登録みたいな画面があって、登録を2回クリックして
2回リクエストが飛んできたらどうするか?
2件登録されちゃうのは操作上ちょっとまずいよね。


>>90
少なくともクラス図くらいは書かないと理解できないと思う。
だから、UMLがかけるツールを使ってリバースしているよ。


>>97
FormTagは改造してない?
そしたら自動でできるようになると思うけど。
Formが決まればActionMappingも決まってActionも決まるから
Actionごとのtokenが自動でhiddenに張り付くようにできるよ。
//Add Transaction TokenってところでActionごとのTokenが張り付くように
ちょこちょこって直して...テな感じかな。
ActionMappingとActionForwardは直さなくてもいいような気がするが...
まぁうまく言ってるものはいいけど。(^^ゞ

99 :デフォルトの名無しさん:01/10/25 12:04
月刊DBマガジンの特集(Part4)で、PetstoreやStrutsについて解説があった。
それほど詳しくはないのだけど、概要を理解するにはいいかも。

100 :76=83=86:01/10/26 00:24
JavaWorldもDBマガジンもJ2EEパターンだったね。

32 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)