国産DIコンテナSeasar ..
337:デフォルトの名無しさん
06/09/10 21:35:12
S2Strutsリファレンス
URLリンク(s2struts.seasar.org)
form-beanタグの属性値
> クラス名が"Form"あるいは"Dto"でしているクラスを基に設定を補完します。
クラス名が"Form"あるいは"Dto"で「終了」しているクラスを基に設定を補完します。
重箱の隅つついてすみません ^^;
338:デフォルトの名無しさん
06/09/10 21:46:39
ZoroConfig
339:デフォルトの名無しさん
06/09/10 21:53:23
アノテーションを使用したstruts-configの設定(S2Strutsリファレンス)
アノテーションでは validateにfalseを設定しているのに、
同等のaction-mappingの記述では validate="true"となっている。
<action
path="/employeeEdit"
type="org.seasar.struts.examples.employee.action.EmployeeEditAction"
name="employeeForm"
scope="request"
validate=<ここです>"true"</ここです>>
340:デフォルトの名無しさん
06/09/11 08:11:39
>>339
Spring使え
341:デフォルトの名無しさん
06/09/11 10:44:25
そのさぁ、Spring使えっていうの、やめてほしいよな。コミッタがそういうんだったら話は違うけどさ。
342:デフォルトの名無しさん
06/09/11 13:12:30
>>341
読み飛ばせないなら「Spring使え」をNGワードにでも登録しとけ
343:デフォルトの名無しさん
06/09/11 14:12:07
>>342 すでにしてある
344:デフォルトの名無しさん
06/09/11 14:21:56
してあるなら>>342はあぼんされて見えないはずだろ?
まぁ、どうでもいいがw
345:デフォルトの名無しさん
06/09/11 14:48:34
Seasar2で学ぶ DIとAOP アスペクト指向によるJava開発 (大型本) arton
この本、どうよ??
青本はすでに手元にあるんだが…
諸賢らの感想求ム。
346:デフォルトの名無しさん
06/09/11 15:18:47
紙質が、(ry
347:デフォルトの名無しさん
06/09/11 17:43:51
>>345
ドキュメントを読んだり、サンプルをトレースすれば
かなり理解できるので、
青本については購入する必要はなかったかなと思った。
※トランザクション関連の所は勉強になった。
今のところarton本の必要性は感じないな。
S2Tapestryを使ったり、eclipseではなくNetBeansで
S2を使った開発をしたいという人は
参考になるのかもしれないけど。
348:デフォルトの名無しさん
06/09/11 23:28:31
>>341
Spring使え
349:デフォルトの名無しさん
06/09/12 12:59:33
MLがすっかり閑散としちゃったけど何かあったの?
350:デフォルトの名無しさん
06/09/12 13:04:53
理事が引退したからでは。
351:デフォルトの名無しさん
06/09/13 06:14:59
>>349
SpringのML、すげえ活発w
352:デフォルトの名無しさん
06/09/13 22:42:19
>>351
Springのスレは寂れてるけどなw
353:デフォルトの名無しさん
06/09/14 00:41:31
ここも人間批判ぐらいしか伸びないじゃないかw
354:デフォルトの名無しさん
06/09/20 06:42:29
synchronizedを書きたいのか書きたくないのか
355:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/09/20 17:17:39
SQL間違えた(汗
select * from hoge where column1 like '%aaa%' and column1 like '%bbb%' and column1 like '%ccc%' and ......
357:355
06/09/20 17:25:32
埋め込み変数コメント というので出来た(;´д`)
さっきまで出来なかったのだが、スマソ。
358:デフォルトの名無しさん
06/09/20 17:26:04
>>355
QUERYアノテーション を使えばいいんじゃね?
359:355
06/09/20 18:55:44
>>358 ありがとう。>>357で解決しますた
360:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/09/20 19:02:29
ぐぐってみたところ、
URLリンク(www.seasar.org)
でコレに近い情報があるんですが、Teedaのようデス。
使ってはいけないってことカナ?
362:デフォルトの名無しさん
06/09/20 20:56:33
S2TestCaseのreadXlsReplaceDbメソッドがExcelファイルのブランク(スペース文字の列)セルを
nullに変換するのは仕様?
ブランクはブランクのままにしてほしい。
363:デフォルトの名無しさん
06/09/20 22:09:26
なんだこれ。
URLリンク(svn.seasar.org)
プ
364:360
06/09/21 14:44:25
いろいろ試してみたが、やっぱダメっぽい。自前実装するほかなさそうか(;´д`)ウエェ
365:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/09/22 10:43:27
ちゅらとこーひーはどっちがおいしいのかなぁ?
367:デフォルトの名無しさん
06/09/22 19:20:52
これってすごいゴミだな。
S2Daoとか死んでほしい。PHPのADODBの方がマシ。
S2JSFもなんかたまに変な動作する。
早くつぶれろ。
368:デフォルトの名無しさん
06/09/22 19:35:40
>>367
>PHPのADODB
はあ? マイクロソフトのADODBとPHPのADOdbの区別も付かないゴミカスか(w
お前がつぶれたほうがいいんじゃね?
369:デフォルトの名無しさん
06/09/22 21:26:20
>>368
獄長乙
370:デフォルトの名無しさん
06/09/22 22:34:40
>>363
いまさらだがどの変がプだったんだ?
371:デフォルトの名無しさん
06/09/23 00:07:09
>>370
URLリンク(svn.seasar.org)
372:デフォルトの名無しさん
06/09/23 00:09:05
>>368
自分のプライドを守るために、些細な事で吼えるのはやめた方がよいです。
373:デフォルトの名無しさん
06/09/23 00:25:20
>>372
>>367に言ってあげなさいな。それともゴミカスのような367本人かね(w
374:デフォルトの名無しさん
06/09/23 01:04:58
>>371
どの変がプなんだ?
375:デフォルトの名無しさん
06/09/24 11:39:28
>>374
シーザーマスコットの間抜けなツラが、じゃね?
376:デフォルトの名無しさん
06/09/24 12:47:27
seasarを使うのは沖縄原理主義者
377:デフォルトの名無しさん
06/09/24 13:30:35
>>374
獄長が知ってます。
378:デフォルトの名無しさん
06/09/24 14:06:10
S2JSFとかKuinaとかメンドクサソウ。
379:デフォルトの名無しさん
06/09/24 15:22:30
>>377
お前に説明して欲しい
380:デフォルトの名無しさん
06/09/24 19:54:27
フレームワーク(笑)の開発者ともあろう者が
java.util.*以下のクラスの使いかたも知らんとは
381:デフォルトの名無しさん
06/09/24 20:47:24
>>380
kwsk
382:デフォルトの名無しさん
06/09/25 00:47:42
> フレームワーク(笑)の開発者ともあろう者が
> java.util.*以下のクラスの使いかたも知らんとは
そんなのはHashMapの排他問題で既に明らかだったじゃないか。何を今更。
383:デフォルトの名無しさん
06/09/25 00:53:20
>>382
kwsk
384:デフォルトの名無しさん
06/09/25 18:55:30
URLリンク(d.hatena.ne.jp)
ここの日記で、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:デフォルトの名無しさん
06/09/25 23:56:19
Actionのinterfaceを作らなければ良い
386:デフォルトの名無しさん
06/09/26 10:42:01
>>385
> Actionのinterfaceを作らなければ良い
後、InitActionと普通のActionを統合するのもOK。
ただし、interfaceを使わない場合は、
アスペクトの指定は自動でできないから、
メソッド名に何らかのパターンを持たせる必要があります。
387:デフォルトの名無しさん
06/09/26 12:52:40
ようわからんのだが、Teeda単体を使っていればS2JSFってのは使わなくても良いってこと?
双方の違いって何?
388:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/09/26 14:49:19
なるほど。あまり組み合わせが多いのはユーザーを混乱させてしまう要因になるので好ましくはないカモ。
これまでのS2JSFと比較して速い安いうまいがそろった組み合わせを一つ選んで
S2ファウンデーションで推し進めるようにしてもらいたいのが希望。
で、とりあえずオススメはTeeda Core+Teeda Extension ??
390:デフォルトの名無しさん
06/09/26 15:58:25
さっそくTeeda Extensionをいじろうとしてるんですけど、
URLリンク(teeda.seasar.org)
でみたら、Teeda Extensionの使い方がに関するドキュメントが無いのはなぜ?
391:デフォルトの名無しさん
06/09/26 16:21:25
おれも気になる。
どれ使えばいいんだよー。
つーかS2JSFなくなるの?
392:デフォルトの名無しさん
06/09/26 16:50:46
S2Dxoのドキュメントないの?
どこまでマッピングサポートしているのか、
これからしてくれる予定なのか
わからにゃい。
S2Strutsのemployeeのサンプルに
プレゼンモデルとエンティティモデルの変換ロジックを
入れてほしいなぁ。
あと、プレゼンテーション層(S2Struts, S2JSF)に依存しない
入力チェック機能も欲しいな。
S2Cao公開して欲しいなあ。
要望いっぱい♪
393:デフォルトの名無しさん
06/09/26 18:47:23
やべぇ、teeda-html-example をみながらサンプル動かしてみようかと
ちょっといじったんだけど、teeda-html-exampleでteeda自体の使い方は
「なんとなく」わかるけど、アーキテクチャはこうなってて、
こういう風に設定ファイルを書くべきであって…といった情報がほぼ皆無に等しいよww
漏れみたいにまず最初にドキュメントやら使ってみたレポートが豊富にあって
そこから使っていくというライトユーザ向けじゃねぇってことか?
自前でガンガンコーディング出来る香具師向けって感じだな、今は。
このあいだ入った経験の浅いエンジニアにでもいじらせようかと想ったが
今のteedaとかの状態じゃ、とてもじゃないけど人にもすすめられないし
複数人で動く仕事にも導入できないんじゃないかという危機感でいっぱい。
394:デフォルトの名無しさん
06/09/26 18:48:21
>>393
つ Spring
395:デフォルトの名無しさん
06/09/26 18:51:21
で、そこらへん、どうなの?>コミッタ陣
「進めています」といった説得力のない言葉じゃなくって、
具体的な進捗状況とか、スケジュールなんかあると良いのだが。
今の状態だと複数人で動かす業務じゃ入れられないし、ノウハウたまらんし。
>>394 Springは使う予定無い。
396:デフォルトの名無しさん
06/09/26 19:07:24
>>393
僕はまだ触ってないんだけど、
JSF仕様の設定以外にTeeda独自の設定をたくさんしなくちゃいけないってこと?
397:デフォルトの名無しさん
06/09/26 19:14:05
つ JSF
398:デフォルトの名無しさん
06/09/26 19:36:46
>>396
たぶんそうだと思う。exampleみる感じだとロジックだとかをどこらへんで
登録してんのかが(まだ)わかんないw (もちろん、そのドキュメント・仕様なんてないっぽい。探し方悪いだけかな?)
exampleはとりあえず動かせてはいるのだが、DBと連携するために
S2Daoつかったり、S2Dxoとか使うとなれば
どんな設定すれば良いのかなど、公開されているexampleでは皆目見当がつかない。
まじめに評価すべきかどうか検討中……(;´д`)
399:デフォルトの名無しさん
06/09/26 19:37:36
>具体的な進捗状況とか、スケジュールなんかあると良いのだが。
これ同意。
きっちり守れなんて言わないけど、
大まかなスケジュールは提示してほしいな。
Sandboxなんてこれからどうなるのかさっぱり。
400:デフォルトの名無しさん
06/09/26 19:40:21
>>395
11/11の正式リリースを待て。
10/13にすべての実装が終わって、
それからドキュメントに取り掛かる。
401:デフォルトの名無しさん
06/09/26 19:48:15
>>400
アナウンスしてくださ〜い
402:デフォルトの名無しさん
06/09/26 21:57:10
>400
おー。がんばれー。
403:デフォルトの名無しさん
06/09/27 01:04:17
Clickに乗り換えた。
S2 + S2Dao + Clickがシンプルかつほぼ十分でよい。
ざっと一通りドキュメント(英語)を見て使いはじめるまで1日程度。
あとはググりにくい名前だけ、なんとかしてほしぃ。
なんか最近のS2周りって、余計な複雑さを取り込んでいるような気がした。
404:デフォルトの名無しさん
06/09/27 02:18:30
プレゼンテーション層なら、Wicketもなかなかいいぞ。
405:デフォルトの名無しさん
06/09/27 09:51:23
>>404
テンプレートにプレーンなHTMLってのがちょっとな。
あれって、みんなどうなの?
独自属性って覚えにくいしめんどくさいし。
それで「ブラウザで確認できますよ」くらいのメリットしかないの。
406:395
06/09/27 10:49:46
>>400
期待しとります。けど、どうか品質を落とさぬように。
407:デフォルトの名無しさん
06/09/27 19:39:54
DBFluteだって。
S2Daoのサポートツールなのかな?
なんか良さげ。
408:デフォルトの名無しさん
06/09/27 23:13:43
GoyaGenは公開しないのか喃
409:デフォルトの名無しさん
06/09/28 01:02:31
>>408
URLリンク(www.seasar.org)
410:デフォルトの名無しさん
06/09/28 01:17:55
>>405
独自属性ってのが何を指しているのかいまいちわからないんだけど....
HTMLにはwicket:id属性が現れるけどそれのこと? 覚えるというか、
それ一つしかないんだから「覚える」というほどのことでもないと思うんだが。
実際ページでループなんかのロジックを書かずに、すべて裏側のJavaプログラムで
制御するというのは気持ちいいよ。JavaプログラマだからJavaプログラムならお手の
ものだし、何より迷いがない。すべてJavaで制御する、と心置きなくやりきれる。
411:デフォルトの名無しさん
06/09/28 01:39:17
マゾっこメ〜グは〜〜〜〜〜〜〜〜マゾっこメ〜グは〜〜〜〜〜〜〜〜
412:デフォルトの名無しさん
06/09/28 02:00:27
>>410
ブログでwicketを広めてくれ
413:デフォルトの名無しさん
06/09/28 02:02:48
>>403
S2Struts + mayaa, S2JSFと比較してどういいの?
414:デフォルトの名無しさん
06/09/28 02:16:26
>>410
Wicketはシンプルなんだね。週末にでもしっかり見てみるよ。
S2JSFだとs:xxxとかm:xxxとかいろいろ出てきて、
結構面倒なんよ。
> JavaプログラマだからJavaプログラムならお手の
> ものだし、何より迷いがない。
まさにそれ!Clickもそういった割り切りがあって好き。
JavaとXMLとJSFタグとGrooveとスイッチングはしんどい。
415:デフォルトの名無しさん
06/09/28 02:45:30
>>413
あくまでしょぼい末端SIのうちの場合。
あと、S2Struts + Mayaaは使ったこと無いです。
非常にシンプルかつ、機能的にほぼ十分。
足りない部分を自分で何とかするのがとても楽。
シンプルさを何より重要視しているみたい。
・JSFやEJB3への準拠
・プレーンHTMLのテンプレート
はメリットより、それによって増える複雑さというデメリットの方が大きい。
416:デフォルトの名無しさん
06/09/29 02:25:19
獄長、Kuinaで死にそうな私を助けて。
417:デフォルトの名無しさん
06/10/01 09:27:23
s2strutsを使用しているサイト発見
URLリンク(career.meidaisha.co.jp)
418:デフォルトの名無しさん
06/10/02 01:36:28
獄長、部屋が汚くて死にそうな私を助けて。
419:デフォルトの名無しさん
06/10/03 05:52:14
>>418
掃除しろ、ひきこもり
420:デフォルトの名無しさん
06/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:デフォルトの名無しさん
06/10/04 02:08:04
>>420
キモいな。
しかし分かりやすいw
422:デフォルトの名無しさん
06/10/04 05:33:36
>>420
もしコミッタならサンキュー。
でもこういうのはさあ、ここじゃなくてもっと公式なところで言ってほしいな(笑)。
コミッタの日記でいいからさあ。
S2Dxoまだまだ先だな。
とりあえずDozer使っとく。
423:デフォルトの名無しさん
06/10/04 22:23:40
>>422
ネタかどうかわからんのでマジレスするとS2Dxoはコンテナに統合されたよ。
URLリンク(d.hatena.ne.jp)
424:デフォルトの名無しさん
06/10/05 13:40:15
とりあえず、
1から100まで詳解したドキュメント、タグなどを含めたリファレンス、
初心者でもつまづくことなく丁寧に記述されたチュートリアル
これぐらいは当然として、あとはバグ情報だとかがほしい。
425:デフォルトの名無しさん
06/10/05 19:46:31
後はSeasar In ActionとInside Seasar2だな
426:デフォルトの名無しさん
06/10/05 20:12:02
Insideって古いだろw
Pragmatic Seasar2
Agile Web Development with Seasar2
Seasar2 Recipes
From Spring to Seasar2
427:デフォルトの名無しさん
06/10/05 20:37:43
つ Techknow Seasar2
428:デフォルトの名無しさん
06/10/05 21:43:32
>>427
ネタ元何?
429:デフォルトの名無しさん
06/10/06 00:08:44
>>428は平成生まれか
430:デフォルトの名無しさん
06/10/06 00:12:54
「はじめてのSeasar2」抜けてないか?
オライリーのSeasar2本も。もちろん表紙はシーサーで。やんばるくいなでもおけ。
あと iStudy for Seasar2も出しとけ>システムテクノロジー愛
431:デフォルトの名無しさん
06/10/06 00:46:10
>>427
ネタ元何?
Seasar2 Hacks
Head First Seasar2
独習Seasar2
Seasar2
ふつうのSeasar2
やさしいSeasar2
Seasar2で学ぶDIコンテナレッスン
心の折れないSeasar2ドリル
432:デフォルトの名無しさん
06/10/06 01:17:35
プロとして
恥ずかしくない
Seasar2の
大原則
433:デフォルトの名無しさん
06/10/06 01:23:57
Pro Seasar2
Professional Java Development with the Seasar2
Expert One-on-One J2EE Development without Seasar2
434:デフォルトの名無しさん
06/10/06 01:28:33
おまいら独習Seasar2がぬけてますよ。
435:434
06/10/06 01:29:12
>>431にあったよ.....すまんかった......
436:デフォルトの名無しさん
06/10/06 02:34:41
>>431
URLリンク(d.hatena.ne.jp)
437:デフォルトの名無しさん
06/10/06 02:49:15
>>427,429,436
ちょwww80年代前半じゃねーかwwwwwお前らいくつだよwww
Seasarの中の連中オッサンばっかって再認識したよ
438:デフォルトの名無しさん
06/10/06 16:23:24
今更ながらに基本的なことで申し訳ないのですが教えてくださいませ。
1.POJOといってもメンバーに他のコンポーネント(のインターフェース)
を持っているとすると、依存性はないといっても、結局インターフェース
に依存しているという点では依存性は克服されていないように思います。
つまりそれほどポータブルではない。
2.そのインターフェースを実装しているクラスが一つだとすると、AOPや
モックの利用に必要という点を除いて、インターフェースを使っている
意味はほとんどなく、具象クラスに依存しているのと変わりないのでは
ないでしょうか。
439:デフォルトの名無しさん
06/10/06 21:14:10
>438
1.インタフェースに依存するのと、具象クラスに依存するのでは
全然意味合いが違うと思うのだが。
2.AOPでトランザクションを業務に意識させない、
モックと交換しての並行開発などメリットは十二分にあると思われ。
440:デフォルトの名無しさん
06/10/06 21:18:07
インターフェースの存在理由がわからないだけだろ?
初心者スレいけよ
441:デフォルトの名無しさん
06/10/06 22:15:48
インターフェースというものは絶対に必要。
しっかり考えての設計を数こなせばそこに疑問はなくなる。
Javaのinterfaceってのはインターフェースを明確にするためのひとつの手段。
使う使わないの選択はあるがな。
実装の都合で具象クラスのみにするという選択は当然ある。
つか全てのクラスにinterfaceを作るわけじゃないのはわかるよな。
で、知りたいのはインターフェースの有用性かPOJOの意味かDIの有用性かそれとも他の何かか。
疑問点を明確にして出直せ。
442:デフォルトの名無しさん
06/10/06 22:59:04
>438
「バグはシステムの端っこにある」で痛い目にあってないな。
Javaで作るような規模だとinterface抜きじゃメンテ無理。
もっとコード書け、ってアドバイスしかできん。
443:デフォルトの名無しさん
06/10/07 01:15:59
回答ありがとうございます。
AOPやモックによる利点についてはわかっています。
それ以外に、インターフェースを使わなかった場合に具体的に
どういう問題が起きてくるのかをちょっと聞いてみたいと思います。
444:デフォルトの名無しさん
06/10/07 02:47:53
>>438
>依存性は克服されていないように思います。
サービス固有のオブジェクトが相互に関連を持つのは当たり前。
克服したかったのはコンテナ依存性。
コンテナを選ばない辺りがポータブル。
445:デフォルトの名無しさん
06/10/07 10:04:26
>>444
ありがとうございます。確かに関連を持つのは当たり前ですね。
コンテナ依存性についてですが、EJBでも一応アプリケーションサーバを
選ばないという点で同じではないでしょうか。あとPOJOになった利点がよく
言われるのですが、コンテナが提供するサービスを利用する以上、あるいは
動作させるのにインジェクションが必要な以上、コンテナ自体に依存して
いるのでその点だけを見た場合EJBとどれだけ違うのかなと思います。
あとコンテナを変えるということがどれだけあるのかと。
たぶん何か勘違いしているのだと思いますがよろしくお願いします。
446:デフォルトの名無しさん
06/10/07 10:30:23
同じコンテナ依存と言っても、EJBの仕様が難しくてついていけなかった人々が頼るものだから…
447:デフォルトの名無しさん
06/10/07 10:32:53
>>445
>いるのでその点だけを見た場合EJBとどれだけ違うのかなと思います。
それは一度テストケースを書いてみればよくわかる。
448:デフォルトの名無しさん
06/10/07 10:43:04
>>438
インターフェイスに依存するということは、実装は切り替えられるということ
LLのように動的にオブジェクトの構成を変更できる言語と違って
Javaのような言語は、どうしてもインターフェイスは固定しておかなければならない
だからJavaの場合、インターフェイスはかっちり決めて実装を簡単に変更できる
ようにしておくと便利。当然、インターフェイスがしっかり決まらなければ意味無いけど
Seasarの自動登録機能を使ってると、どうしても「インターフェイスに実装が一つ」の方が
楽になってくるのは確かだね。本来のDIコンテナの意味を考えると、自分も少し矛盾を感じてる
同一インターフェイスに複数の実装を登録した時点で、どれを登録するかをコンポーネント名
などで設定してあげる必要がある。設定ファイルが無いとアノテーションやsetter名で選択する
ことになるから、結局実装依存性がわずかながら生まれてきてしまう。
Springが設定ファイルに拘るのはそこらへんが原因なのかも
449:デフォルトの名無しさん
06/10/07 10:50:06
>動作させるのにインジェクションが必要
コードベタ書きすることで代用可能。コンテナが必要ってわけじゃない。
まあ面倒だが。
>あとコンテナを変えるということがどれだけあるのかと。
それが勘違い。
POJOの側からコンテナを呼び出すような形が「コンテナに依存」ということ。
それらの疑問はコードたくさん書いてみればだいたい解決するよ。
450:デフォルトの名無しさん
06/10/07 11:06:33
たとえばアプリケーションコンテナで実行していた機能を、
パフォーマンス上の理由でcronタスクで起動する
バッチ処理にしなければいけなかったとする。
だけどその機能を実現するロジックがアプリケーションコンテナに
依存していたりすると泣けるっしょ?
そんな時、ただのPOJOだから、スタンドアロンアプリで簡単に
利用できたら感涙っしょ?
特定のコンテナに依存しないというよりも、Seaser以外のコンテナに依存しないっつー事。
451:デフォルトの名無しさん
06/10/07 12:03:10
そもそもEJBで書くにしても、コアな処理はPOJOで記述して
最後にEJBラッパ用意するだけの形にするのがベストだと思う。
EJB自体、EJB3でPOJO意識した作りになったし。
(あれはPOJOじゃないと思うが。)
452:デフォルトの名無しさん
06/10/07 15:10:18
SessionBean とか、結局一つで済ましちゃうのが普通だもんなあ。
453:デフォルトの名無しさん
06/10/07 18:10:56
URLリンク(s-marke.backlog.jp)
ユーザID:guest
パスワード:guest
454:デフォルトの名無しさん
06/10/07 20:58:43
いろいろと回答ありがとうございます。
あともう一点質問があるのですが、
コンテナで管理されるオブジェクトには継承は使ってはいけないので
しょうか(インターフェースとは別にDefaultのサービスを継承)。
POJOという点からはご法度だと思うのですが、似たような
処理を行うクラス群では、セッター・インジェクションの部分が重複
して記述されることになり、ついつい共通部分に継承を使いたくなって
しまうのですが。まあ、フィールド・インジェクションを使うと、
その点はかなり緩和されるのですが。
455:デフォルトの名無しさん
06/10/07 21:57:26
POJOは何も継承しないというわけじゃなくて、
特定のフレームワーク固有のオブジェクトを継承しないということ。
自分で作ったクラスを継承する分にはコントロールできるから問題ないでしょ。
456:デフォルトの名無しさん
06/10/09 13:12:23
POJOで継承使っちゃいけなかったら、それはむしろ退化してるだろ。
「フレームワークが指定したクラスを継承する必要はなくて、継承階層は
自分で自由に決められる」というあたりまえのことがPOJOの(ひとつの)意味でしょ。
JavaにおいてあたりまえだからPlain Oldなわけで。
457:デフォルトの名無しさん
06/10/09 13:43:44
いろいろ質問する前にコード書いたらどうか。
簡単なフレームワーク構築して
EJBベースとDIコンテナベースで比較したら
もう二度とEJBなんてゴメンだと思う。
458:デフォルトの名無しさん
06/10/11 11:19:21
URLリンク(svn.seasar.org)
S2Hibernate-JPA のテストでどうしても static イニシャライザが実行されず,getAnnotationHandler() が null を返すのでやむを得ず修正.
Java 言語仕様 (第三版)「12.4.1 When Initialization Occurs」では static メソッドが呼び出される際にクラスが初期化される (static イニシャライザが実行される) ことになっているのだが...
納得できないが 6 時間くらい悩んでも解決できなかったので諦める.無念だ.
[参考]
URLリンク(java.sun.com)
獄長乙
459:デフォルトの名無しさん
06/10/11 22:27:32
最近獄長の存在感がないな
higaタソの挑発もないしasipの粘着もない
Seasarツマンネ
460:デフォルトの名無しさん
06/10/11 23:01:27
プログラマは大人になったら終わりなのに、
みんな相手より上の目線に立ちたくて
より大人な態度を振舞おうとしてるからだね。
負けず嫌いでユーモアに溢れた独善的な技術者が、
とびきり魅力的だって事を忘れてしまったんだな。
惨めな奴らだよ。
461:デフォルトの名無しさん
06/10/11 23:52:18
大人な態度にし向けたのはどこのどいつらかと小一(ry
462:デフォルトの名無しさん
06/10/12 09:23:31
DIの適用範囲ですが、Webアプリケーション以外の、
デスクトップアプリケーション、バッチ処理、制御系などでも
使われているのでしょうか。DIが向かないものがあるとすれば
どのようなものでしょうか。
463:デフォルトの名無しさん
06/10/12 09:37:17
>>462
ソースを読めば判るよ
464:デフォルトの名無しさん
06/10/12 10:12:25
↑この回答をしている人ってSeasar関係者なの?
もしそうだとするとドキュメントが少ないという理由がよくわかるな。
「やればわかる」とか「まずやってみましょう」とかいうのは
どこかの宗教か、訪問販売っぽい。説明できない人がよく使う
常套文句。
2chだからまあどうでもいいのかもしれないが、プロジェクトで
DIの導入を検討しているときに、こういう答えをされたら、
見送りになっちゃうかな。
↑がSeasar関係者じゃないことを祈る。
465:デフォルトの名無しさん
06/10/12 11:37:51
関係者なのか、関係者じゃないのか
466:デフォルトの名無しさん
06/10/12 11:54:35
URLリンク(svn.seasar.org)
heimの概念を導入し、jotunを廃止した。
heim?? jotun??
467:デフォルトの名無しさん
06/10/12 12:50:07
>>464
Seasarの関係者というのが何をさしているかわからないけど、
基本コミッタは、2chに書き込むことはないはず。
書き込むときは、困っている人を助けるときだね。
468:デフォルトの名無しさん
06/10/12 13:37:22
つ>463はネタ
Web以外で使われてるかどうかソース読んで判るわけない
お前らソースより空気読め
469:463
06/10/12 14:05:58
>>464
冗談で書いただけなのになに熱くなってるんだ?w
470:デフォルトの名無しさん
06/10/12 17:54:11
季節は涼しい秋でつよ?w
471:デフォルトの名無しさん
06/10/12 22:34:58
>>462
デスクトップアプリケーション、バッチ処理でもOKですよ
サービス層以降はWebアプリだろうが何だろうがあまり変わらないと思うので。
472:デフォルトの名無しさん
06/10/12 22:43:29
>>462
初期化にはそれなりに時間がかかるから
起動・終了のサイクルが早いアプリや、
瞬時に起動する必要のあるアプリには向いてない。
起動コスト以外の制約は思いつかない。
Swing画面(テストツールとか)でも平気で使っちゃってる。
473:デフォルトの名無しさん
06/10/13 00:36:06
>>472
> >>462
> 初期化にはそれなりに時間がかかるから
> 起動・終了のサイクルが早いアプリや、
> 瞬時に起動する必要のあるアプリには向いてない。
そのためのWarm Deploy
474:デフォルトの名無しさん
06/10/13 05:04:05
>>462
シューティングゲームを作るのに、向いていますよ。
敵の弾とか、自動でインジェクションされます。
475:デフォルトの名無しさん
06/10/13 13:04:28
シングルトンがほぼ使い物にならないのと現在の状態に依存して生成されるから
DIが解になるとはおもえんが
476:デフォルトの名無しさん
06/10/14 00:49:23
URLリンク(d.hatena.ne.jp)
>乱暴な言い方だけど、ソースコードがドキュメントだ。みたいな。
>そうは言っても、コードの一部分だけ読めば事足りるんなら、それはそれでえーやん…とか。
コミッタがソース読めって言っちゃったよw
477:デフォルトの名無しさん
06/10/14 01:04:24
そんな揚げ足をとらんでも。
478:デフォルトの名無しさん
06/10/14 01:11:49
確かに「言ってる」な。びびったよもう!
479:デフォルトの名無しさん
06/10/15 15:19:27
>>400
実装終わた?
480:デフォルトの名無しさん
06/10/15 18:21:01
>>476
文脈を考えようぜ
481:デフォルトの名無しさん
06/10/15 18:35:38
>>480
調子のんな
482:デフォルトの名無しさん
06/10/15 21:32:00
>>481
獄長乙
483:デフォルトの名無しさん
06/10/16 15:06:37
S2JSF1.0.xにautocompleteを出力するようにして下さい。
484:デフォルトの名無しさん
06/10/16 18:43:17
>>483
JIRAに登録しました。対応までしばらくお待ちください。
485:デフォルトの名無しさん
06/10/16 19:29:48
>>484
どうもありがとうございます。まさかすぐ対応してくれるとは思いませんでした。
486:デフォルトの名無しさん
06/10/19 04:17:46
S2JSFでforEachタグを使ってtableのタテのセルの統合はどうやればいいでしょうか?
とりあえず1回目のループで統合対象のセルのrowspanにListのsizeを設定して
m:renderedでインデックスが0の時だけ統合対象以外のセルを出力
2回目のループではm:renderedでインデックスが1以上の時に統合対象以外のセルを出力
とやっているのですがもっと良い方法があるのでしょうか?
487:デフォルトの名無しさん
06/10/19 11:21:33
>>483
もう対応されたみたいだよ
488:デフォルトの名無しさん
06/10/20 18:36:00
S2Daoの要望
1. update系メソッドでもQUERYアノテーションを使えるようにして欲しい。
現状:
deleteByName_SQL = "delete from XXX where NAME like /*name*/";
(SQLを"delete from"から書く必要あり)
希望:
deleteByName_QUERY = "NAME like /*name*/";
2. 件数取得用メソッド体系を用意して欲しい。
希望:
int countByName(String name);
countByName_QUERY = "NAME like /*name*/";
-> select count(*) from XXX where NAME like /*name*/
3. insertOrUpdate に対応して欲しい。
4. テーブルが存在しないときの例外メッセージを分かり易くして欲しい。
現状: [ESSR0072]SQLで例外(SQL=[SELEC FROM XXX WHERE ...
("SELEC"って何?)
489:デフォルトの名無しさん
06/10/20 22:46:58
あとN:1関連の自動生成SQL、
INNER JOINを指定出来るようにしてくれー。
N:1の1側なんて大概マスタ系じゃん、
たかだか名称とるだけとかなのに
全件なめられちゃ困るのだ。
490:デフォルトの名無しさん
06/10/20 22:54:19
findByFooAndBar(Long foo, String bar)
のような場合、ARGSアノテーションなしにとかできないでしょうか?
491:デフォルトの名無しさん
06/10/20 23:31:54
>>488
JIRAに登録しました。対応までしばらくお待ちください。
>>489
JIRAに登録しました。対応までしばらくお待ちください。
>>490
ふざけんな、なめんな、ボケ。
492:デフォルトの名無しさん
06/10/21 00:07:21
チョーウケル
493:デフォルトの名無しさん
06/10/21 01:36:28
>>491
ASIPにタレこみました。対応までしばらくお待ちください。
494:490
06/10/21 03:59:46
>>491
すみません。ふざけたり、なめたりしているつもりはなかったのです。
サンプルなどでもこういった形式のメソッド名がよく出てくるので、
Convention over ConfigurationやDRYを満たすために良いかもと思った
(引数名がとれないからARGSアノテーションが導入されたという記憶があったので)
のですが、どうやら罵倒されるほど浅はかな考えだったようです。
未だ、どれほど下らない事を言ってしまったのかは正直分からないのですが。
495:デフォルトの名無しさん
06/10/21 06:19:50
>>494
実際にゃ>>488も>>489もJIRAに登録されてないことから推測すれ。
496:デフォルトの名無しさん
06/10/21 14:54:40
>>490
君はちっとも悪くない。
>>491
芦乙
497:デフォルトの名無しさん
06/10/21 15:03:31
足には
491のような
ネタをやる
センスはない
498:デフォルトの名無しさん
06/10/21 22:54:11
>>494
ネタにマジレスすることがどれほど下らないか分からないなんて…
2ちゃんに向いてないね
499:デフォルトの名無しさん
06/10/21 23:00:01
ネタそのものがつまらん場合はどっちに罪があるかだな。
500:デフォルトの名無しさん
06/10/21 23:41:33
罪があるのか、ないのか
501:デフォルトの名無しさん
06/10/22 00:26:32
>>498
どれほど下らないんだ?
502:デフォルトの名無しさん
06/10/22 00:27:03
sage厨登場
↓
503:デフォルトの名無しさん
06/10/22 13:28:42
URLリンク(d.hatena.ne.jp)
なんだこいつ、神か。
504:デフォルトの名無しさん
06/10/22 14:05:06
神じゃなくて獄長
505:デフォルトの名無しさん
06/10/22 15:20:34
>>503
コイツはすげぇ!超スゲェ!
>>490の要求なんて、数年前の出来事家のように軽くこなしてる。
>>491は本当に寒い、心より恥じろ。氏ね。っていうか死ね。無価値!
>>503みたいな奴が居るのがSeaserの底力なんだよな。凄すぎる。
これからも頑張って欲しいです(^^)
他の奴らは邪魔だから書き込まなくてもいいよ(^^)
506:デフォルトの名無しさん
06/10/22 16:16:29
>>505
獄長乙
507:デフォルトの名無しさん
06/10/22 16:16:46
つ、獄長のはパクリ
508:デフォルトの名無しさん
06/10/22 16:48:57
1 キムキムがdoclet作成
2 獄長がパクる
3 太一がeclipseプラグイン作成
こんな流れ
さすが獄長seasrの底力w
509:デフォルトの名無しさん
06/10/22 18:38:59
パクりじゃなくてコラボレーションと言ってあげようよw
510:デフォルトの名無しさん
06/10/22 20:58:32
>>509
お前コラボの意味わかってないだろwww
インスパイアと言え
511:デフォルトの名無しさん
06/10/22 21:04:11
>>510
お前こそ分かってないな
インスパイヤと言え
512:デフォルトの名無しさん
06/10/23 00:05:26
URLリンク(d.hatena.ne.jp)
> Uujiは、ひがさん作成の、
> 命名規約に基づいて動作する事で、コードの記述量を大きく減らす事を可能にした新しいDaoフレームワークです。
( ´_ゝ`)フーン
513:デフォルトの名無しさん
06/10/23 06:43:17
頼まれもしないのにコーダーみたいな事してるのか。
創造性のかけらも無い。
514:デフォルトの名無しさん
06/10/23 12:36:41
> 頼まれもしないのにコーダーみたいな事してるのか。
IT 土方としての素質を発揮したんじゃね?
515:デフォルトの名無しさん
06/10/23 12:43:01
そういうの、くーすの頃からいわれてるじゃん。
516:デフォルトの名無しさん
06/10/23 19:07:21
なんか荒れてるね。
・自分は実力はあるのに評価されていない
・まわりの連中は馬鹿ばっかと思っている
など満たされていない人たちが多いように推測します。
まあ、そんな人がいるプロジェクトは成功するのが
なかなか難しそうですね。
がんばって臭いw
517:デフォルトの名無しさん
06/10/23 20:04:04
>>516
獄長、(r
518:デフォルトの名無しさん
06/10/23 20:27:24
荒れてる気がしないんだが…
どこかで獄長が暴れてるのか?
519:デフォルトの名無しさん
06/10/23 23:34:50
引数名の取得だろw
抽象メソッドからはAPIレベルじゃ取得できないのを知らずに突っ走ってた小僧が、
えらそうな口を叩くようになったもんだ。
520:デフォルトの名無しさん
06/10/24 00:06:53
つまり>490以降の流れが荒れてるってことか?
平和だなw
521:デフォルトの名無しさん
06/10/24 01:40:01
>>519
抽象メソッドでなきゃAPIレベルで取れるもん?
522:デフォルトの名無しさん
06/10/24 02:20:02
>>521
クラスのbyte[]を直に触るか、バイトコード関連のAPI。
SunのJDK5ならBCELを内蔵している。
抽象メソッドはコードアトリビュートを持つと、
クラスのベリファイアでエラーになる。
なので、抽象メソッドならドックレットが必須。
言い方が悪かったか。APIというよりか、ランタイムだな。
523:デフォルトの名無しさん
06/10/24 10:16:05
久しぶりにヒガタソのブログ見に行ったら、
太文字や大文字が入り乱れて禿げしく読みにくくなってる。
何か、文体もアニメに出てくるアメリカかぶれキャラみたいになってて微妙。
3ヶ月ほどの間に何があったんだ。。。
524:デフォルトの名無しさん
06/10/24 10:28:13
はやくドキュメント用意してくれ〜〜〜〜
525:デフォルトの名無しさん
06/10/24 11:48:10
>>524
書き始めたばかりじゃね?
526:デフォルトの名無しさん
06/10/24 16:36:06
> 久しぶりにヒガタソのブログ見に行ったら、
> 太文字や大文字が入り乱れて禿げしく読みにくくなってる。
Plagger で EntryFullText して、いらんタグ取り除く Filter かませばいいんじゃね?
527:デフォルトの名無しさん
06/10/24 23:37:53
Seaser界隈って、>>526みたいな事を真剣にやって
「これは超凄い!」
って言ってるような雰囲気がプンプンするよな。
本来存在しなかった複雑さを、後から無駄に努力して乗り越えて
やり遂げた気になってる。
つーか、どっちかというとJava全般がそうなのか…?
528:デフォルトの名無しさん
06/10/24 23:48:18
Java って、getter と setter 書いて作業数増やすための言語っしょ?
529:デフォルトの名無しさん
06/10/25 00:11:11
作業数増やさないと利益増やせないからな
アマチュアはすっこんでろってこった
530:デフォルトの名無しさん
06/10/25 00:42:45
直接メンバ変数触らせるなんてバグの温床
531:デフォルトの名無しさん
06/10/25 01:10:36
> 直接メンバ変数触らせるなんてバグの温床
なんで〜?w
532:デフォルトの名無しさん
06/10/25 07:34:18
>>527
Javaに限らずメジャーを狙えば必然的にそうなる
バカな下級戦士どもには単純さと簡単さは別物
相反すると言っていいくらいだ
言語もフレームワークも下級戦士どもがやりがちな過ちを
未然に防ごうとすると本質的でない複雑さが増える
533:デフォルトの名無しさん
06/10/25 09:54:49
>>528
IDE使えばアクセサくらい10秒で実装できるから目くじら立てなくてもいいじゃないか。
>>530>>531
publicフィールドがバグに直結した経験はないけど、
Eclipseで呼び出し先一覧を取得できないから嫌い。
あと、もしかしたらListみたいな参照型のフィールドだと直接publicじゃなくて、
addLastHoge(Ojbect element);
addHoge(Ojbect element, int index);
getHoge(int index);
removeHoge(int index);
の方が安全な気がする。理由は聞かないでくれ。なんとなくだからw
534:デフォルトの名無しさん
06/10/26 00:23:57
> IDE使えばアクセサくらい10秒で実装できるから目くじら立てなくてもいいじゃないか。
10 秒もかかるの?
535:デフォルトの名無しさん
06/10/26 00:47:41
そういうツッコミはつまらないよ
せめてIDEが統一されていないことによって操作性が違うとかいってあげようよ
536:533
06/10/26 09:42:55
>>528>>534は好きなだけpublicフィールド使えばいいじゃないか。
同様に、
Eclipseが嫌な香具師は他のIDEを使えばいいし、
Seasarが嫌な香具師は他のDIコンテナを使えばいいし、
Javaが嫌な香具師は他の言語を使えばいい。
それだけのこと。
537:デフォルトの名無しさん
06/10/26 12:03:10
Goyaのまとまった資料ってどこにあるの?
538:デフォルトの名無しさん
06/10/26 12:11:53
>>537
WEB+DB Press
539:デフォルトの名無しさん
06/10/26 12:14:21
Plagger のまとまった資料ってどこにあるの?
540:デフォルトの名無しさん
06/10/26 12:29:05
Teeda と TeedaExtentions のまとまった資料ってどこにあるの?
541:デフォルトの名無しさん
06/10/26 13:32:06
S2EBIはまぁいいとしよう。
だが、KijimunaやChuraはプロダクトの意味がまったく推測できない。
はっきりいって分かりにくい。
S2Container PluginやAllInOne4EJB3-JSF-JPAのほうが名前からわかり易くていいだろ。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5396日前に更新/235 KB
担当:undef