1 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 23:29:27 ] 一部で話題になっている国産オープンソースDIコンテナSeasar V2(略してS2)。 ってどうよ?みんなもう使ってるの? 使用経験とか、実戦配備情報とか、つかえねーよボケ、とかいろいろ書いてね。 本家 seasar.org www.seasar.org/ Seasar Projectグループ seasarproject.g.hatena.ne.jp/ ひがやすをblog d.hatena.ne.jp/higayasuo/ 前スレ その1 pc5.2ch.net/test/read.cgi/tech/1092044210/ その2 pc5.2ch.net/test/read.cgi/tech/1098885253/ その3 pc8.2ch.net/test/read.cgi/tech/1102862221/ その4 pc8.2ch.net/test/read.cgi/tech/1119608621/ その5 pc8.2ch.net/test/read.cgi/tech/1135986150/ その6 pc8.2ch.net/test/read.cgi/tech/1148204750/ 関連スレ Java Spring Frameworkを語るスレ pc8.2ch.net/test/read.cgi/tech/1077465099/ Dependncy Injectionを語るスレ pc8.2ch.net/test/read.cgi/tech/1099827125/ Java⇔RDBのMapping-Frameworkを語るThre Vol.4 pc8.2ch.net/test/read.cgi/tech/1134701684/
349 名前:デフォルトの名無しさん [2006/09/12(火) 12:59:33 ] MLがすっかり閑散としちゃったけど何かあったの?
350 名前:デフォルトの名無しさん mailto:sage [2006/09/12(火) 13:04:53 ] 理事が引退したからでは。
351 名前:デフォルトの名無しさん [2006/09/13(水) 06:14:59 ] >>349 SpringのML、すげえ活発w
352 名前:デフォルトの名無しさん mailto:sage [2006/09/13(水) 22:42:19 ] >>351 Springのスレは寂れてるけどなw
353 名前:デフォルトの名無しさん mailto:sage [2006/09/14(木) 00:41:31 ] ここも人間批判ぐらいしか伸びないじゃないかw
354 名前:デフォルトの名無しさん [2006/09/20(水) 06:42:29 ] synchronizedを書きたいのか書きたくないのか
355 名前:デフォルトの名無しさん [2006/09/20(水) 17:16:25 ] S2Dao でちょっと困ってマス。 where 句 にlikeを同じカラムに対して何度も指定したいのですけど……… たとえば、 select * from hoge where column1 like '%aaa%' and like '%bbb%' and like '%ccc%' and ...... という感じデス。SQLアノテーションで "select * from hoge where ? " で書いて、? に生成した文字列をセットすると、 select * from hoge where 'column1 like '%aaa%' and like '%bbb%' and like '%ccc%' and ......' といった感じにシングルクォーテーションで動的に囲まれてしまうために正しく実行できません。 何か良い方法ないですか??
356 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 17:17:39 ] SQL間違えた(汗 select * from hoge where column1 like '%aaa%' and column1 like '%bbb%' and column1 like '%ccc%' and ......
357 名前:355 mailto:sage [2006/09/20(水) 17:25:32 ] 埋め込み変数コメント というので出来た(;´д`) さっきまで出来なかったのだが、スマソ。
358 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 17:26:04 ] >>355 QUERYアノテーション を使えばいいんじゃね?
359 名前:355 mailto:sage [2006/09/20(水) 18:55:44 ] >>358 ありがとう。>>357 で解決しますた
360 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 19:00:56 ] 別質問でスマソ. S2JSFでx:dataScrollerを使うと例外が出マス。S2JSFは1,0.17、MyFacesは1.1.3。 <span m:inject="x:dataTable" id="itemDataList" m:var="e" m:value="#{itemList}" rows="3" m:rowIndexVar="i" > <span m:inject="h:column"> .................. </span> </span> <span m:inject="x:dataScroller" id="itemDataScroller" for="itemDataList" fastStep="10" pageCountVar="pageCount" pageIndexVar="pageIndex" paginator="true" paginatorMaxPages="9" > </span> とタグを置くと、データの表示、1 2 3...のリンクは表示されるが、リンクをクリックすると、 java.lang.ClassCastException: org.apache.myfaces.custom.datascroller.HtmlDataScroller at org.seasar.jsf.application.ActionListenerImpl.processAction(ActionListenerImpl.java:57) at org.apache.myfaces.custom.datascroller.HtmlDataScroller.broadcastToActionListener(HtmlDataScroller.java:221) at org.apache.myfaces.custom.datascroller.HtmlDataScroller.broadcast(HtmlDataScroller.java:110) at org.seasar.jsf.component.S2UIViewRoot.broadcastForPhase(S2UIViewRoot.java:119) at org.seasar.jsf.component.S2UIViewRoot.processApplication(S2UIViewRoot.java:90) at org.seasar.jsf.lifecycle.LifecycleImpl.invokeApplication(LifecycleImpl.java:169) at org.seasar.jsf.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:102) ............ が出てしまいマス。タグの書き方が悪いですか?
361 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 19:02:29 ] ぐぐってみたところ、 https://www.seasar.org/issues/browse/TEEDA-15 でコレに近い情報があるんですが、Teedaのようデス。 使ってはいけないってことカナ?
362 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 20:56:33 ] S2TestCaseのreadXlsReplaceDbメソッドがExcelファイルのブランク(スペース文字の列)セルを nullに変換するのは仕様? ブランクはブランクのままにしてほしい。
363 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 22:09:26 ] なんだこれ。 svn.seasar.org/browse/trunk/seasar2/s2-framework/src/main/java/org/seasar/framework/util/Mru.java?root=s2container プ
364 名前:360 mailto:sage [2006/09/21(木) 14:44:25 ] いろいろ試してみたが、やっぱダメっぽい。自前実装するほかなさそうか(;´д`)ウエェ
365 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 19:17:51 ] >>363 An Exception Has Occurred trunk/seasar2/s2-framework/src/main/java/org/seasar/framework/util/Mru.java: unknown location HTTP Response Status 404 Not Found
366 名前:デフォルトの名無しさん [2006/09/22(金) 10:43:27 ] ちゅらとこーひーはどっちがおいしいのかなぁ?
367 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 19:20:52 ] これってすごいゴミだな。 S2Daoとか死んでほしい。PHPのADODBの方がマシ。 S2JSFもなんかたまに変な動作する。 早くつぶれろ。
368 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 19:35:40 ] >>367 >PHPのADODB はあ? マイクロソフトのADODBとPHPのADOdbの区別も付かないゴミカスか(w お前がつぶれたほうがいいんじゃね?
369 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 21:26:20 ] >>368 獄長乙
370 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 22:34:40 ] >>363 いまさらだがどの変がプだったんだ?
371 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 00:07:09 ] >>370 svn.seasar.org/browse/trunk/seasar2/s2-framework/src/main/java/org/seasar/framework/util/Mru.java?root=s2container&pathrev=1324
372 名前:デフォルトの名無しさん [2006/09/23(土) 00:09:05 ] >>368 自分のプライドを守るために、些細な事で吼えるのはやめた方がよいです。
373 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 00:25:20 ] >>372 >>367 に言ってあげなさいな。それともゴミカスのような367本人かね(w
374 名前:デフォルトの名無しさん mailto:sage [2006/09/23(土) 01:04:58 ] >>371 どの変がプなんだ?
375 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 11:39:28 ] >>374 シーザーマスコットの間抜けなツラが、じゃね?
376 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 12:47:27 ] seasarを使うのは沖縄原理主義者
377 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 13:30:35 ] >>374 獄長が知ってます。
378 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 14:06:10 ] S2JSFとかKuinaとかメンドクサソウ。
379 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 15:22:30 ] >>377 お前に説明して欲しい
380 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 19:54:27 ] フレームワーク(笑)の開発者ともあろう者が java.util.*以下のクラスの使いかたも知らんとは
381 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 20:47:24 ] >>380 kwsk
382 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 00:47:42 ] > フレームワーク(笑)の開発者ともあろう者が > java.util.*以下のクラスの使いかたも知らんとは そんなのはHashMapの排他問題で既に明らかだったじゃないか。何を今更。
383 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 00:53:20 ] >>382 kwsk
384 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 18:55:30 ] ttp://d.hatena.ne.jp/higayasuo/20060818 ここの日記で、1画面につき1クラスという話が出ています。 s2-jsf-example-1.1.0-beta-4.zipをみると、1画面につき複数のクラスが使われています。 (例:EmployeeConfirmActionImpl.java、EmployeeConfirmInitActionImpl.java) TeedaCoreになっているS2JSFもこのスタイルは変わらないものですかね? MyFacesを採用したS2JSF1.0系を使ってますけど、1画面につき最低でも2つのクラスが発生して interfaceを含めると膨大な数になって管理コストがあがってしまっています。 teeda exampleをみると、一画面につきPageクラスを使用したものになっててシンプルで良さげ。 具体的な説明・ドキュメントは無いですか??
385 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 23:56:19 ] Actionのinterfaceを作らなければ良い
386 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 10:42:01 ] >>385 > Actionのinterfaceを作らなければ良い 後、InitActionと普通のActionを統合するのもOK。 ただし、interfaceを使わない場合は、 アスペクトの指定は自動でできないから、 メソッド名に何らかのパターンを持たせる必要があります。
387 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 12:52:40 ] ようわからんのだが、Teeda単体を使っていればS2JSFってのは使わなくても良いってこと? 双方の違いって何?
388 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 13:38:19 ] Teeda CoreはJSF実装でMyFaces相当 Teeda ExtensionはHTMLテンプレートエンジンを含むS2JSF相当 いろいろな組み合わせがある MyFaces+S2JSF(S2JSF1.0系) Teeda Core+S2JSF(S2JSF1.1系) Teeda Core+Teeda Extension
389 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 14:49:19 ] なるほど。あまり組み合わせが多いのはユーザーを混乱させてしまう要因になるので好ましくはないカモ。 これまでのS2JSFと比較して速い安いうまいがそろった組み合わせを一つ選んで S2ファウンデーションで推し進めるようにしてもらいたいのが希望。 で、とりあえずオススメはTeeda Core+Teeda Extension ??
390 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 15:58:25 ] さっそくTeeda Extensionをいじろうとしてるんですけど、 ttp://teeda.seasar.org/ja/ でみたら、Teeda Extensionの使い方がに関するドキュメントが無いのはなぜ?
391 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 16:21:25 ] おれも気になる。 どれ使えばいいんだよー。 つーかS2JSFなくなるの?
392 名前:デフォルトの名無しさん [2006/09/26(火) 16:50:46 ] S2Dxoのドキュメントないの? どこまでマッピングサポートしているのか、 これからしてくれる予定なのか わからにゃい。 S2Strutsのemployeeのサンプルに プレゼンモデルとエンティティモデルの変換ロジックを 入れてほしいなぁ。 あと、プレゼンテーション層(S2Struts, S2JSF)に依存しない 入力チェック機能も欲しいな。 S2Cao公開して欲しいなあ。 要望いっぱい♪
393 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 18:47:23 ] やべぇ、teeda-html-example をみながらサンプル動かしてみようかと ちょっといじったんだけど、teeda-html-exampleでteeda自体の使い方は 「なんとなく」わかるけど、アーキテクチャはこうなってて、 こういう風に設定ファイルを書くべきであって…といった情報がほぼ皆無に等しいよww 漏れみたいにまず最初にドキュメントやら使ってみたレポートが豊富にあって そこから使っていくというライトユーザ向けじゃねぇってことか? 自前でガンガンコーディング出来る香具師向けって感じだな、今は。 このあいだ入った経験の浅いエンジニアにでもいじらせようかと想ったが 今のteedaとかの状態じゃ、とてもじゃないけど人にもすすめられないし 複数人で動く仕事にも導入できないんじゃないかという危機感でいっぱい。
394 名前:デフォルトの名無しさん [2006/09/26(火) 18:48:21 ] >>393 つ Spring
395 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 18:51:21 ] で、そこらへん、どうなの?>コミッタ陣 「進めています」といった説得力のない言葉じゃなくって、 具体的な進捗状況とか、スケジュールなんかあると良いのだが。 今の状態だと複数人で動かす業務じゃ入れられないし、ノウハウたまらんし。 >>394 Springは使う予定無い。
396 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 19:07:24 ] >>393 僕はまだ触ってないんだけど、 JSF仕様の設定以外にTeeda独自の設定をたくさんしなくちゃいけないってこと?
397 名前:デフォルトの名無しさん [2006/09/26(火) 19:14:05 ] つ JSF
398 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 19:36:46 ] >>396 たぶんそうだと思う。exampleみる感じだとロジックだとかをどこらへんで 登録してんのかが(まだ)わかんないw (もちろん、そのドキュメント・仕様なんてないっぽい。探し方悪いだけかな?) exampleはとりあえず動かせてはいるのだが、DBと連携するために S2Daoつかったり、S2Dxoとか使うとなれば どんな設定すれば良いのかなど、公開されているexampleでは皆目見当がつかない。 まじめに評価すべきかどうか検討中……(;´д`)
399 名前:デフォルトの名無しさん [2006/09/26(火) 19:37:36 ] >具体的な進捗状況とか、スケジュールなんかあると良いのだが。 これ同意。 きっちり守れなんて言わないけど、 大まかなスケジュールは提示してほしいな。 Sandboxなんてこれからどうなるのかさっぱり。
400 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 19:40:21 ] >>395 11/11の正式リリースを待て。 10/13にすべての実装が終わって、 それからドキュメントに取り掛かる。
401 名前:デフォルトの名無しさん [2006/09/26(火) 19:48:15 ] >>400 アナウンスしてくださ〜い
402 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 21:57:10 ] >400 おー。がんばれー。
403 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 01:04:17 ] Clickに乗り換えた。 S2 + S2Dao + Clickがシンプルかつほぼ十分でよい。 ざっと一通りドキュメント(英語)を見て使いはじめるまで1日程度。 あとはググりにくい名前だけ、なんとかしてほしぃ。 なんか最近のS2周りって、余計な複雑さを取り込んでいるような気がした。
404 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 02:18:30 ] プレゼンテーション層なら、Wicketもなかなかいいぞ。
405 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 09:51:23 ] >>404 テンプレートにプレーンなHTMLってのがちょっとな。 あれって、みんなどうなの? 独自属性って覚えにくいしめんどくさいし。 それで「ブラウザで確認できますよ」くらいのメリットしかないの。
406 名前:395 mailto:sage [2006/09/27(水) 10:49:46 ] >>400 期待しとります。けど、どうか品質を落とさぬように。
407 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 19:39:54 ] DBFluteだって。 S2Daoのサポートツールなのかな? なんか良さげ。
408 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 23:13:43 ] GoyaGenは公開しないのか喃
409 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 01:02:31 ] >>408 www.seasar.org/wiki/index.php?Sandbox%2FS2Dao-CodeGen
410 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 01:17:55 ] >>405 独自属性ってのが何を指しているのかいまいちわからないんだけど.... HTMLにはwicket:id属性が現れるけどそれのこと? 覚えるというか、 それ一つしかないんだから「覚える」というほどのことでもないと思うんだが。 実際ページでループなんかのロジックを書かずに、すべて裏側のJavaプログラムで 制御するというのは気持ちいいよ。JavaプログラマだからJavaプログラムならお手の ものだし、何より迷いがない。すべてJavaで制御する、と心置きなくやりきれる。
411 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 01:39:17 ] マゾっこメ〜グは〜〜〜〜〜〜〜〜マゾっこメ〜グは〜〜〜〜〜〜〜〜
412 名前:デフォルトの名無しさん [2006/09/28(木) 02:00:27 ] >>410 ブログでwicketを広めてくれ
413 名前:デフォルトの名無しさん [2006/09/28(木) 02:02:48 ] >>403 S2Struts + mayaa, S2JSFと比較してどういいの?
414 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 02:16:26 ] >>410 Wicketはシンプルなんだね。週末にでもしっかり見てみるよ。 S2JSFだとs:xxxとかm:xxxとかいろいろ出てきて、 結構面倒なんよ。 > JavaプログラマだからJavaプログラムならお手の > ものだし、何より迷いがない。 まさにそれ!Clickもそういった割り切りがあって好き。 JavaとXMLとJSFタグとGrooveとスイッチングはしんどい。
415 名前:デフォルトの名無しさん mailto:sage [2006/09/28(木) 02:45:30 ] >>413 あくまでしょぼい末端SIのうちの場合。 あと、S2Struts + Mayaaは使ったこと無いです。 非常にシンプルかつ、機能的にほぼ十分。 足りない部分を自分で何とかするのがとても楽。 シンプルさを何より重要視しているみたい。 ・JSFやEJB3への準拠 ・プレーンHTMLのテンプレート はメリットより、それによって増える複雑さというデメリットの方が大きい。
416 名前:デフォルトの名無しさん [2006/09/29(金) 02:25:19 ] 獄長、Kuinaで死にそうな私を助けて。
417 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 09:27:23 ] s2strutsを使用しているサイト発見 ttp://career.meidaisha.co.jp/
418 名前:デフォルトの名無しさん mailto:sage [2006/10/02(月) 01:36:28 ] 獄長、部屋が汚くて死にそうな私を助けて。
419 名前:デフォルトの名無しさん [2006/10/03(火) 05:52:14 ] >>418 掃除しろ、ひきこもり
420 名前:デフォルトの名無しさん mailto:sage [2006/10/03(火) 23:24:43 ] 1月の早いうち。EJB3に対応したSeasar2。 1末。S2EJB3Unit:EJB3を簡単にテストするためのフレームワーク。詳しくは別のエントリで。 2中。S2Dxo。 2末。TeedaCore EA1。JSFを簡単にテストするためのフレームワークTeedaUnit(名称仮)を含む。 3末。TeedaCoreリリース。TeedaCoreとSeasar2を連動させるTeedaExtensionもリリース。 4末。TeedaExtensionに無設定JSF機能を追加。 5末。KuinaCore EA1。 6末。KuinaCoreリリース。 7末。TeedaExtensionにHTMLテンプレート機能を追加。 8末。KuinaDao EA1。 9末。KuinaDaoリリース。 10。←今ここ
421 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 02:08:04 ] >>420 キモいな。 しかし分かりやすいw
422 名前:デフォルトの名無しさん [2006/10/04(水) 05:33:36 ] >>420 もしコミッタならサンキュー。 でもこういうのはさあ、ここじゃなくてもっと公式なところで言ってほしいな(笑)。 コミッタの日記でいいからさあ。 S2Dxoまだまだ先だな。 とりあえずDozer使っとく。
423 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 22:23:40 ] >>422 ネタかどうかわからんのでマジレスするとS2Dxoはコンテナに統合されたよ。 ttp://d.hatena.ne.jp/higayasuo/20060921
424 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 13:40:15 ] とりあえず、 1から100まで詳解したドキュメント、タグなどを含めたリファレンス、 初心者でもつまづくことなく丁寧に記述されたチュートリアル これぐらいは当然として、あとはバグ情報だとかがほしい。
425 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 19:46:31 ] 後はSeasar In ActionとInside Seasar2だな
426 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 20:12:02 ] Insideって古いだろw Pragmatic Seasar2 Agile Web Development with Seasar2 Seasar2 Recipes From Spring to Seasar2
427 名前:デフォルトの名無しさん [2006/10/05(木) 20:37:43 ] つ Techknow Seasar2
428 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 21:43:32 ] >>427 ネタ元何?
429 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 00:08:44 ] >>428 は平成生まれか
430 名前:デフォルトの名無しさん [2006/10/06(金) 00:12:54 ] 「はじめてのSeasar2」抜けてないか? オライリーのSeasar2本も。もちろん表紙はシーサーで。やんばるくいなでもおけ。 あと iStudy for Seasar2も出しとけ>システムテクノロジー愛
431 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 00:46:10 ] >>427 ネタ元何? Seasar2 Hacks Head First Seasar2 独習Seasar2 Seasar2 ふつうのSeasar2 やさしいSeasar2 Seasar2で学ぶDIコンテナレッスン 心の折れないSeasar2ドリル
432 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 01:17:35 ] プロとして 恥ずかしくない Seasar2の 大原則
433 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 01:23:57 ] Pro Seasar2 Professional Java Development with the Seasar2 Expert One-on-One J2EE Development without Seasar2
434 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 01:28:33 ] おまいら独習Seasar2がぬけてますよ。
435 名前:434 mailto:sage [2006/10/06(金) 01:29:12 ] >>431 にあったよ.....すまんかった......
436 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 02:34:41 ] >>431 d.hatena.ne.jp/keyword/%A5%C6%A5%AF%A5%CE%A5%A6
437 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 02:49:15 ] >>427 ,429,436 ちょwww80年代前半じゃねーかwwwwwお前らいくつだよwww Seasarの中の連中オッサンばっかって再認識したよ
438 名前:デフォルトの名無しさん [2006/10/06(金) 16:23:24 ] 今更ながらに基本的なことで申し訳ないのですが教えてくださいませ。 1.POJOといってもメンバーに他のコンポーネント(のインターフェース) を持っているとすると、依存性はないといっても、結局インターフェース に依存しているという点では依存性は克服されていないように思います。 つまりそれほどポータブルではない。 2.そのインターフェースを実装しているクラスが一つだとすると、AOPや モックの利用に必要という点を除いて、インターフェースを使っている 意味はほとんどなく、具象クラスに依存しているのと変わりないのでは ないでしょうか。
439 名前:デフォルトの名無しさん [2006/10/06(金) 21:14:10 ] >438 1.インタフェースに依存するのと、具象クラスに依存するのでは 全然意味合いが違うと思うのだが。 2.AOPでトランザクションを業務に意識させない、 モックと交換しての並行開発などメリットは十二分にあると思われ。
440 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 21:18:07 ] インターフェースの存在理由がわからないだけだろ? 初心者スレいけよ
441 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 22:15:48 ] インターフェースというものは絶対に必要。 しっかり考えての設計を数こなせばそこに疑問はなくなる。 Javaのinterfaceってのはインターフェースを明確にするためのひとつの手段。 使う使わないの選択はあるがな。 実装の都合で具象クラスのみにするという選択は当然ある。 つか全てのクラスにinterfaceを作るわけじゃないのはわかるよな。 で、知りたいのはインターフェースの有用性かPOJOの意味かDIの有用性かそれとも他の何かか。 疑問点を明確にして出直せ。
442 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 22:59:04 ] >438 「バグはシステムの端っこにある」で痛い目にあってないな。 Javaで作るような規模だとinterface抜きじゃメンテ無理。 もっとコード書け、ってアドバイスしかできん。
443 名前:デフォルトの名無しさん [2006/10/07(土) 01:15:59 ] 回答ありがとうございます。 AOPやモックによる利点についてはわかっています。 それ以外に、インターフェースを使わなかった場合に具体的に どういう問題が起きてくるのかをちょっと聞いてみたいと思います。
444 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 02:47:53 ] >>438 >依存性は克服されていないように思います。 サービス固有のオブジェクトが相互に関連を持つのは当たり前。 克服したかったのはコンテナ依存性。 コンテナを選ばない辺りがポータブル。
445 名前:デフォルトの名無しさん [2006/10/07(土) 10:04:26 ] >>444 ありがとうございます。確かに関連を持つのは当たり前ですね。 コンテナ依存性についてですが、EJBでも一応アプリケーションサーバを 選ばないという点で同じではないでしょうか。あとPOJOになった利点がよく 言われるのですが、コンテナが提供するサービスを利用する以上、あるいは 動作させるのにインジェクションが必要な以上、コンテナ自体に依存して いるのでその点だけを見た場合EJBとどれだけ違うのかなと思います。 あとコンテナを変えるということがどれだけあるのかと。 たぶん何か勘違いしているのだと思いますがよろしくお願いします。
446 名前:デフォルトの名無しさん [2006/10/07(土) 10:30:23 ] 同じコンテナ依存と言っても、EJBの仕様が難しくてついていけなかった人々が頼るものだから…
447 名前:デフォルトの名無しさん [2006/10/07(土) 10:32:53 ] >>445 >いるのでその点だけを見た場合EJBとどれだけ違うのかなと思います。 それは一度テストケースを書いてみればよくわかる。
448 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 10:43:04 ] >>438 インターフェイスに依存するということは、実装は切り替えられるということ LLのように動的にオブジェクトの構成を変更できる言語と違って Javaのような言語は、どうしてもインターフェイスは固定しておかなければならない だからJavaの場合、インターフェイスはかっちり決めて実装を簡単に変更できる ようにしておくと便利。当然、インターフェイスがしっかり決まらなければ意味無いけど Seasarの自動登録機能を使ってると、どうしても「インターフェイスに実装が一つ」の方が 楽になってくるのは確かだね。本来のDIコンテナの意味を考えると、自分も少し矛盾を感じてる 同一インターフェイスに複数の実装を登録した時点で、どれを登録するかをコンポーネント名 などで設定してあげる必要がある。設定ファイルが無いとアノテーションやsetter名で選択する ことになるから、結局実装依存性がわずかながら生まれてきてしまう。 Springが設定ファイルに拘るのはそこらへんが原因なのかも
449 名前:デフォルトの名無しさん mailto:sage [2006/10/07(土) 10:50:06 ] >動作させるのにインジェクションが必要 コードベタ書きすることで代用可能。コンテナが必要ってわけじゃない。 まあ面倒だが。 >あとコンテナを変えるということがどれだけあるのかと。 それが勘違い。 POJOの側からコンテナを呼び出すような形が「コンテナに依存」ということ。 それらの疑問はコードたくさん書いてみればだいたい解決するよ。