[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 08/17 14:23 / Filesize : 243 KB / Number-of Response : 892
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Java Spring Frameworkを語るスレ



1 名前:デフォルトの名無しさん mailto:sage [04/02/23 00:51]
www.springframework.org/

乱立するフレームワークと競合するプロトコルの嵐のなかで、
リスクの高い決断を余儀なくされているJavaデベロッパ、プ
ロジェクトマネージャに対する福音です。

語るべし。


369 名前:デフォルトの名無しさん mailto:sage [2005/04/23(土) 02:19:57 ]
現実的にはSpringかと。
ただ、オープンソースのプロダクトの利用数を数えるのは難しい上、両方そこまで大々的には使われてないから実数はよくわからない罠。

370 名前:デフォルトの名無しさん [2005/04/23(土) 22:42:23 ]
1.2のRC2が出てるが、
なんか役に立ちそうな機能追加された?

371 名前:デフォルトの名無しさん mailto:sage [2005/04/24(日) 01:21:41 ]
Hibernate3対応かな?

372 名前:368 mailto:sage [2005/04/24(日) 19:14:40 ]
>>369
thx!

373 名前:デフォルトの名無しさん mailto:sage [2005/04/24(日) 19:30:21 ]
>>372
ただ、Spring使ってる人のまわりではSpringばっかりだし、Seasar2使ってる人のまわりではSeasar2ばっかりだから、人の意見はあまりあてにならんけどね。

374 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 13:30:15 ]
すまん、DIはよく知らんのだが、よくEJBは××だからDIまんせー的な
発言見るんだけど、そもそもDIってリモートコールできんの?

375 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 13:58:11 ]
DIパターンとリモートコールは全然関係ない領域の話だとおもうがね。

376 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 14:30:44 ]
一つ聞きたいんですが
ttp://wiki.bmedianode.com/Spring/?%BC%D9%B0%AD%A4%CASingleton
↑のページを参考に beanRefContext.xml を書いたのですが
Spring が DEBUG メッセージを吐くのでちと気持ち悪いです。
ログは汚れるものの、期待通りの動作はしています。

型の合うコンストラクタが見つからないとか、そんな感じのメッセージなのですが
確かに ClassPathXmlApplicationContext のコンストラクタに
java.util.ArrayList を持つものはない模様で
この辺りは「一通りコンストラクタ調べたけどないっぽいから
String[] だと思って処理しよう」とかそんな流れでしょうか?
この辺り、ログを汚さないでスマートに指定する方法を教えていただけないでしょうか?

377 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 18:37:22 ]
Springをちょっとずつ勉強しててDIのあたりまでわかったところなんですが、
AOP周りにも触ってみようと思ってます。

で、AOPって、具体的にはどんなことに使えるのかサッパリわかりません。
ログとる例ばっかりで、他に出来ることはないのか?って感じなんですが、
何に使うんですか?AOP

コンテナ側では使ってるのは理解できるんですが。
具体的な用途や、参考になるページがあったら
すみませんが教えてもらえないでしょうか。



378 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 03:33:48 ]
AOPの二大用途といえば、

- ロギング
- トランザクション

だわな

379 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 05:15:36 ]
Webの場合はそのくらいだな。

380 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 06:30:47 ]
GUIのプログラムの場合、データ変更の画面への通知もAOPがいい。

381 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 06:33:45 ]
イベントリスナーとかの代わりにって事?

382 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 06:58:12 ]
GUIモノだと、だいたいセッターの後でnotifyみたいなの呼び出す必要があって、かなりめんどい。
それがAOPで楽できる。

383 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 08:04:05 ]
効率を無視していいなら良いんじゃないの


384 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 08:38:48 ]
無視していいわけないけど、影響が少なければ問題ない。

385 名前:377 mailto:sage [2005/05/07(土) 12:01:00 ]
どうもありがとうございます。Web系なんですが、ログもトランザクションも
Springだとそのための手段が用意されてるのでなかなか使い道が難しいですね。

昔GUIも作ったことあったのですが、その例もなるほどなって思いました。
面倒ですものね。「横断的関心」ってやつがちょっとイメージできた気がします。

探してたら、こんなページも見つけました。難しいので理解できてませんが
ttp://www.oucc.org/~tail/aspectj/index.php?%A5%A2%A5%B9%A5%DA%A5%AF%A5%C8%A4%CE%CD%F8%CD%D1%CA%FD%CB%A1


386 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 12:03:14 ]
あ、すいません。ログはないですね。

387 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 13:35:51 ]
>>386
org.springframework.aop.interceptor.TraceInterceptor
org.springframework.aop.interceptor.DebugInterceptor



388 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 18:55:53 ]
>>375
質問した者だが

いやそうじゃなくて、じゃあそもそもEJBと比較して意味あんのかって意味。

分散オブジェクト技術とそうでない技術なら話してる土台が違うわけで
DI>>EJBとかわけわかんないんだけど。

389 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 19:18:26 ]
>>388
EJBは分散が必要ない人にも分散を前提としためんどうな手続きを強要してた。
ほとんどの人に分散は必要なかった。
ほとんどの人にDI+ORM > EJB。

390 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 19:21:41 ]
>>389

てか分散使わないのにEJB使ってる時点でどうかと・・。
まぁ後者のORMとかはわからなくもないが、EJBは
どっちかっつーと、というかどう考えても分散オブジェクトなわけで。

391 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 19:35:40 ]
で、だからEJB使わずDI+ORMでいいじゃんとなったんでしょ。

392 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 21:33:10 ]
>>391があたりまえだがいいことをいった。

393 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 22:17:34 ]
>>390
まあ、EJBには分散以外にもいい点があるわけで。
宣言的なトランザクションとか、SQLを直接書かないDBMSアクセスとか。

そういEJBのよい機能は使いたいけど、
EJBは動かすの面倒、重い、コンテナに依存してテストしづらい
ってのがあって、その打開策としてSpringをはじめとして色々な
ソフトが出てきているわけだよな。

394 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 23:26:16 ]
EJBってのはむしろCORBAの世界で
生きるはずなのだが。

395 名前:デフォルトの名無しさん mailto:sage [2005/05/08(日) 23:38:34 ]
それはない。

396 名前:デフォルトの名無しさん [2005/05/12(木) 14:50:52 ]
Spring+HibernateでWebアプリ開発しようとしているんですが
applicationcontext.xmlのsessionFactoryのところで

java.lang.NoClassDefFoundError: net/sf/ehcache/CacheException
となってしまいます
でも、Hibernateのソースを見ても
net.sf.ehcache.CacheExceptionというクラスは存在してないみたいなんですが
どういうことなんでしょうか?

Hibernateはspring-framework-1.1.5の中に入っていたものを使用しています



397 名前:デフォルトの名無しさん mailto:sage [2005/05/12(木) 19:55:24 ]
そりゃeCacheのjarを用意していないからでは



398 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 18:48:46 ]
質問があります。どうしてもわからないので教えてください。

applicationContext.xml に登録したオブジェクト(bean)の中の処理でファイルを読もうとしています。
このクラスは HttpServlet を継承していません。(特にクライアントからの要求を受け付けるわけではないので
そうしていました)したがって、web.xml には mapping していません。

この状態で、(webapps/project)/WEB-INF/data/ といったディレクトリからファイルを読み出したいので、
絶対パスを取得しようとしていますが、わかりません。

ApplicationContext appCtx = new ClassPathXmlApplicationContext("applicationContext.xml");

で、コンテキストは取得できましたが、パスを取り出す方法はないでしょうか?
(もちろんコンテキストからでなくても構わないです。)

Spring 使ってる上でクラスの作り方が間違っているとか、もっと普通の方法があるようでしたら
ご指摘ください。よろしくお願い致します。

399 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 22:24:06 ]
>>398
私も同じ現象起きてます。
"/WEB-INF/lib/applicationContext.xml"という指定をすると
WEB-INFが見当たらないというエラーが返ってきます
なんでかしらんけど、パッケージの中しかパスが認識されないんです
だから
"/jp/co/sample/applicationContext.xml"
みたいにすると読み込めるんですよ。
でもソースのパッケージの中に設定入れとくのはちょっと気持ち悪いな、といった感じです
私はEclipseでTomcatプラグイン使用してますけど
Web.xmlの設定とかが必要なのかなー

400 名前:399 mailto:sage [2005/05/15(日) 22:30:21 ]
レスした後に気づいたけど

>で、コンテキストは取得できましたが、パスを取り出す方法はないでしょうか?
>(もちろんコンテキストからでなくても構わないです。)

これどいう言う意味ですかね?

絶対パスで指定しなければルート(WEB-INFなのか?)から
フォルダをなめていってくれてapplicationContextを探すってことですかね。

不勉強ですいませんorz

401 名前:デフォルトの名無しさん mailto:sage [2005/05/16(月) 05:36:09 ]
つか、Webアプリだったらweb.xmlに設定書いた設定使うようにすりゃいいじゃん。

402 名前:398 mailto:sage [2005/05/17(火) 05:44:34 ]
>>399

/web.xml
/WEB-INF/config/ (クラスパスが通っている)
/WEB-INF/config/applicationContext.xml
/WEB-INF/data/  (クラスパスが通っていない)
/WEB-INF/data/data.xml

結局知りたいのは、HttpServlet を継承していないクラスから、
上の /WEB-INF/data/data.xml を読む方法なんですが、わからない・・・

>>401
web.xml に登録していなくて、httpServlet を継承していないクラスから
web.xml に記載した初期化パラメータ読むにはどうすればいいんですか?
マジで調べてもわからなかったので、すいませんが教えてください。

403 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 08:11:38 ]
>>402
HttpServletを継承していない普通のクラスが、
/WEB-INF/なんて、HTTP固有のディレクトリ構造に
依存することを良しとする訳ですか。


404 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 08:46:55 ]
基本的には普通のクラスはDIコンテナの存在を気にしないようにするね。

405 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 08:47:10 ]
Servletクラスは絶対パスを取得できるので、そのパスをもらえばいいのでは?

406 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 09:11:58 ]
サーブレットからApplicationContext自体をもらえばいいね。

407 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 14:22:24 ]
FileSystemXmlApplicationContextではだめかいな?



408 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 17:29:46 ]
皆さんどうもありがとうございます。

>>403
/WEB-INF/data にアプリが使うデータファイル置くのは一般的に言って変ですか?
/dataでもいいので普通はそうなら変更を考えます。まだ作法に慣れてないもので勉強します。

>>404
そのクラスは相手がDBじゃなくてファイルなんですがDaoと同じ様な役割をさせたいクラスなんで
他のDaoクラスと同じようにDIコンテナからロードさせてるんですよ。
で、Servletとか関係ない層で動いてるんですが実際のパス取得をどうしようかと悩んでます。
Springのフレームワークからそういうのとれないのかなと考えてましたが、的違いでしたでしょうか?

>>405-407
結局Servletクラスからパスをもらうことにしました。
正直に言ってまだ釈然としないものが残っているんですが、一般的にそうなら慣れるしかないですね

409 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 21:41:41 ]
いにしえのServlet/JavaBeans流:jarファイル近辺のPropertiesファイルか取得
  :
J2EE流:JNDIからデータの位置を取得
      Connectorアーキテクチャでデータを供給
  :
Spring Framework: ?


410 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 22:37:48 ]
>>408
ふつうは、普通のクラスはDIコンテナの存在を気にしないでいいようにする

411 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 22:39:07 ]
>>408
設計が悪いときに無理をしないといけないのは一般的な話だから気にするな。

412 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 23:28:33 ]
>>409
BeanFactoryから取得

413 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 23:41:41 ]
BeanFactoryはどこからファイル所在を取得するつもり?

414 名前:398 mailto:sage [2005/05/17(火) 23:59:50 ]
398です。お忙しいとこ何度もすみません。

>>410
ということは、Spring のアプリケーションコンテキストに依存せず、他の(サーブレットを継承していて
サーバ環境にアクセス可能な)クラスからもらってくる方法はまだマシという理解であってますか?

>>411
設計が悪いのなら直したいのです。>>409さんが書いている様に、Springやその他のDIコンテナ
(すみませんがJ2EE/EJBは知りません)を使ったときの作法があるのなら、この機会に
身に着けたいと思ってます。普通のクラスが外部リソースにアクセスする一般的な方法を
教えてもらえませんか?

415 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 00:17:47 ]
>>413
そりゃサーバサイドだったら、web.xmlじゃないか?

JNDIだってどっかにJNDIのInicialContextFactoryを指定する(プロパティとか)のと同じ事だとおもうけど。

416 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 00:44:57 ]
つまり、根っこはプロパティ

417 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 00:45:37 ]
web.xml使うのは、Servlet層だけの簡単アプリ



418 名前:デフォルトの名無しさん mailto:sage [2005/05/19(木) 06:47:36 ]
DIしたオブジェクトから先は、いもづる式にDIするようにして、DIコンテナを意識しないとか。

419 名前:デフォルトの名無しさん mailto:sage [2005/05/19(木) 10:10:35 ]
>>418
最初は芋づる式って密な感じがして気持ち悪かったけど
実装してみたら楽すぎて止めらんね
どういった点でデメリットが出てくるんだろうか

420 名前:デフォルトの名無しさん [2005/06/01(水) 08:56:52 ]
JSF+Springで設計してんですけど
JSFのバッキングビーンのクラスとビジネスロジックのクラスのそれぞれの役割で

バッキングビーン
値のチェック、変換(この辺はバリデータ、コンバータに
任せるべきなんだろう)などのビジネスロジック呼び出す前の処理
あと、ビジネスロジックの結果の後処理

ビジネスロジック
必要なDAOを呼ぶだけ

こんな風に考えてます。これだとビジネスロジックのクラスが
たいした役割ではないと思うんですけど、DAOのファサード風と考えてよいでしょか

JSF+Springのサンプルアプリがみたいどすえ〜

421 名前:デフォルトの名無しさん [2005/06/01(水) 10:05:15 ]
>>420

>JSF+Springのサンプルアプリがみたいどすえ〜

https://appfuse.dev.java.net/
https://equinox.dev.java.net/

漏れ自身が勉強中なので情報提供のみで失礼。

422 名前:デフォルトの名無しさん [2005/06/01(水) 10:47:23 ]
>>420
DBのモデルを単に画面に表示する・画面に入力した値をDBに格納する
みたいなシンプルなアプリだとそうなるかもね。

423 名前:デフォルトの名無しさん mailto:sage [2005/06/01(水) 10:50:24 ]
sageついでに

>ビジネスロジック呼び出す前の処理
>あと、ビジネスロジックの結果の後処理

どのレベルの処理を言ってるのかわからないけど、
本当にMVCレイヤに置くべき処理なのか再検討してみては?

424 名前:デフォルトの名無しさん mailto:sage [2005/06/01(水) 11:58:03 ]

この本どうよ?書評キボンヌ
『実践Spring Framework―J2EE開発を変えるDIコンテナのすべて』
www.amazon.co.jp/exec/obidos/ASIN/4822221431

『入門Spring』と『軽快なJava』は読みました。さらに詳しい話を
聞きたい、という目的に使えますかね?

425 名前:デフォルトの名無しさん mailto:sage [2005/06/02(木) 22:11:28 ]
SpringがJSFとXULをイイ感じに仲介するフレームワーク作ってくれたら
一杯おごってやりたい。

426 名前:デフォルトの名無しさん mailto:sage [2005/06/03(金) 12:15:51 ]
>>425
Mozilla独自のXULより標準規格のXFormsのほうが良いのでは?
MozillaもOpenOffice.orgもXFormsに対応する上に、
Chibaを使えばXForms未対応のブラウザに対して
HTML+JavaScriptに変換してから送信することで
大部分のブラウザに対応できます。

Chiba (サーバーサイドJavaライブラリ)
chiba.sourceforge.net/
MozillaとXForms (Mozilla1.8/Firefox1.1で対応予定)
www.mozilla-japan.org/projects/xforms/
[XForms 00031] XFormsのためのwiki (村田真氏がMozillaでXForms推進)
www2.xml.gr.jp/log.html?MLID=xforms&N=31

427 名前:デフォルトの名無しさん [2005/06/03(金) 12:41:43 ]
>>426
XULへの必要性は一般の人にとっては低いとは思うが、
>>425は、ブラウザベースクライアントじゃなくて、リッチクライアントとして
XULを使うことを前提に書いてるんじゃなかろうか。
JSF経由でSwingとかFlashをクライアントにするノリで。



428 名前:デフォルトの名無しさん mailto:sage [2005/06/03(金) 12:42:00 ]
sage

429 名前:デフォルトの名無しさん mailto:sage [2005/06/22(水) 09:39:06 ]
禿げオヤジは意外とおとなしかったな。

430 名前:デフォルトの名無しさん mailto:sage [2005/06/25(土) 15:34:01 ]
海外では50%以上のプロジェクトで使われていて
ほぼデファクトスタンダードらしいが、なぜこのスレは伸びないの?


431 名前:デフォルトの名無しさん mailto:sage [2005/06/25(土) 18:21:20 ]
まあ、DIスレも伸び悩んでるし、
カテゴリとしてマイナーなんでは。日本では。

432 名前:デフォルトの名無しさん mailto:sage [2005/06/26(日) 08:56:09 ]
>>430
DIは、使い始めれば空気みたいなもんで、とくに議論することもなくなるから。

433 名前:デフォルトの名無しさん mailto:sage [2005/06/26(日) 16:54:53 ]
つーかSpringがホントに便利なのって純粋なtype2,type3のInjectionその物より、
コンテナが作ったProxyに対するAOPでしょ?

434 名前:デフォルトの名無しさん mailto:sage [2005/06/26(日) 22:33:01 ]
DIってのは、そういうものを便利にするための裏方だからな。

435 名前:デフォルトの名無しさん [2005/06/27(月) 10:43:51 ]
このスレ生きてるみたいだから質問させてくれ

proxyでAspectをweavingする事の弱点って何だ?
漏れが把握しているのは

1.自分自身のメソッドを呼び出すとAspectがかからない。
2.visitorみたくthisを渡して処理させるとAspectがかからない。

他に注意点ある?

436 名前:デフォルトの名無しさん [2005/06/27(月) 11:31:59 ]
ものすごくはらへった。

437 名前:デフォルトの名無しさん mailto:sage [2005/06/27(月) 11:41:45 ]
俺もだ。



438 名前:デフォルトの名無しさん mailto:sage [2005/06/27(月) 13:49:43 ]
いまさら同意。

439 名前:デフォルトの名無しさん [2005/07/05(火) 11:09:42 ]
1.2.2リリース記念

440 名前:デフォルトの名無しさん [2005/07/05(火) 13:38:30 ]
>>439
どこが変わったの?

441 名前:439 mailto:sage [2005/07/05(火) 15:43:58 ]
詳しく見てない&試してないけど、注目した一文は;

『added dedicated support for Hibernate Annotation 3.0 beta 2』

442 名前:デフォルトの名無しさん mailto:sage [2005/07/05(火) 17:36:12 ]
>>441
でも、前からHibernate Annotations使えてたよ。

443 名前:デフォルトの名無しさん mailto:sage [2005/07/05(火) 22:32:17 ]
つうか、Doclet のことを言ってるんじゃあるまいな。

444 名前:デフォルトの名無しさん mailto:sage [2005/07/06(水) 03:19:27 ]
アノテーションってそんなにいいもんなんでしょうか。
DIでせっかくコードから煩雑な記述を追い出したのに、
またコード中に埋め込んで、回帰と言うか退化と言うか。

コンパイラに対する指示を埋め込むのは意義が大きいと思うけど。

445 名前:デフォルトの名無しさん mailto:sage [2005/07/07(木) 10:24:52 ]
>>443
ここの最後にやりかた書いてあるよ。
ttp://www.fk.urban.ne.jp/home/kishida/kouza/hibernateanno.html

446 名前:デフォルトの名無しさん mailto:sage [2005/07/07(木) 10:25:46 ]
>>444
アノテーションは、XMLより記述が楽だし、ソースから得た型の情報を使うことで記述量自体が少なくできてるから、そう煩雑でもない。
クラスに関する情報をソースファイルに一元化できる効果もある。
なによりコンパイラによる静的チェックが効くし、Javaソースエディタでの補完が効く。

447 名前:デフォルトの名無しさん mailto:sage [2005/07/08(金) 22:00:29 ]
DIってテストしやすくなる?
単体まではいいけど、結合で結局アボーンな感じがするのだけど。

まぁつまるところは設計能力か・・・



448 名前:デフォルトの名無しさん mailto:sage [2005/07/10(日) 00:55:34 ]
アボーンって、具体的にはどういう問題がでてくると思う?


449 名前:デフォルトの名無しさん [2005/07/13(水) 20:03:02 ]
TransactionProxyFactoryBeanにtagetってフィールドがあるんですけど、これシングルトンなんです。
マルチスレッドでここに処理が殺到した場合、スレッドセーフにトランザクションさばけるんでしょうか?
教えてください。

TransactionProxyFactoryBean
www.springframework.org/docs/api/org/springframework/transaction/interceptor/TransactionProxyFactoryBean.html

450 名前:デフォルトの名無しさん mailto:sage [2005/07/13(水) 20:42:56 ]
>449

そりゃ、targetしだいだろ。targetがスレッドセーフなら、問題ない。

451 名前:名無しさん [2005/07/13(水) 21:00:03 ]
同時に異なるスレッドの異なるtargetがシングルトンのTransactionProxyFactoryBeanにセットされにきたらどうなりますか?

452 名前:デフォルトの名無しさん mailto:sage [2005/07/13(水) 23:18:19 ]
オブジェクトの数とスレッド数は別ものとして考えないと。

ちゃんと考えられてるだろうから、
単一のオブジェクトの同じメソッドを
複数のスレッドが並行して駆け抜けることは全然OKなように
つくられてるはず・・・(たぶん)

453 名前:デフォルトの名無しさん mailto:sage [2005/07/14(木) 16:28:52 ]
蒼ざ(ry

454 名前:デフォルトの名無しさん [2005/07/14(木) 19:22:10 ]
どうやらtargetもシングルトンじゃないとダメみたいですね。

455 名前:デフォルトの名無しさん [2005/07/16(土) 17:28:30 ]
>>462
それはプラットフォームによる。
・GUIは大抵そう。(OSから飛んでくるイベントの処理は、イベント毎の状態保持が必要。
            もっとも、同じ要素に複数イベント飛んできたら、単に順次処理する事が多いんで、
            本当のスレッド並列処理はそんなに必要ないと思う。)
・Webアプリ周りも大抵そう。(例の(Statefull)Servletあたりが有名)
それ以外の場面で、常にインスタンスとスレッドを別に考えるのは、どーかと思う。
結局インスタンス数を減らしてまでメモリー消費を避けたい特殊な場面(大規模アプリ、組込みアプリ)
に固有のやりかただと思う。

456 名前:455 mailto:sage [2005/07/16(土) 17:30:24 ]
ああ>>451-452の流れか。>>455は取り消し(ワラ

457 名前:デフォルトの名無しさん mailto:sage [2005/07/19(火) 10:34:04 ]
というか誰にレスしてんだ



458 名前:デフォルトの名無しさん [2005/07/24(日) 22:38:13 ]
これが最近有名なJSFって奴ね。
Javaは最新の技術追うのが大変(@@)

459 名前:デフォルトの名無しさん mailto:sage [2005/07/25(月) 01:15:53 ]
==============================
キチガイが狂った独り言を書き込み中
==============================

460 名前:デフォルトの名無しさん mailto:sage [2005/07/25(月) 07:37:48 ]
>>441
applicationContext.xmlの中でHibernate Annotationsの設定がかけるようになるってことみたいだね。
LocalSessionFactoryBeanを使う場合は、hibernate.cfg.xmlを書いておく必要があった。

461 名前:デフォルトの名無しさん mailto:sage [2005/08/06(土) 22:29:31 ]
Spring1.2.3でProxyFactoryBean使おうと思って

[ sample.xml ]
<beans>
<bean id="test" class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="proxyTargetClass"><value>true</value></property>
<property name="target"><ref local="person"/></property>
<property name="interceptorNames"><value>advisor</value></property>
</bean>
…略…
</beans>

[ sample.java ]
BeanFactory factory = new ClassPathXmlApplicationContext("/com/mamezou/aop/proxydi/sample.xml");
Person person = (Person) factory.getBean("test");
person.setName("Hoge");

ってやるとCGLIBがねぇよってエラーになって、
CGLIB2.1のjarクラスパスに突っ込んでやるとエラーになるんだけど…。

対処方法ってなんかある?

462 名前:461 mailto:sage [2005/08/08(月) 00:45:20 ]
事故解決しますた。orz


463 名前:デフォルトの名無しさん mailto:sage [2005/08/08(月) 01:32:41 ]
いちお、解決方法きぼんぬ

464 名前:デフォルトの名無しさん mailto:sage [2005/08/08(月) 12:18:04 ]
今度は aopallience がねえよって怒られて
それを修正したとかそんな流れ?

465 名前:461 mailto:sage [2005/08/08(月) 20:07:27 ]
遅レス、スマソ。

CGLIB2.1入れても
java.lang.NoClassDefFoundError: org/objectweb/asm/Type
って出たので、ASM入れただけです。

_| ̄|○|||

ASMは1.5.3入れました。2.0だと
java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor
が出ます故。これで動いたは動いたケド、正しいかどうかは…。


466 名前:デフォルトの名無しさん mailto:sage [2005/08/08(月) 20:27:13 ]
>>464
だいたいあってたね。

467 名前:デフォルトの名無しさん [2005/08/10(水) 12:47:00 ]
だいたいってことは、正確にはどーすればよいわけ?



468 名前:デフォルトの名無しさん mailto:sage [2005/08/10(水) 20:51:17 ]
CGLIB とかのライブラリは
Spring 付属の jar をぶっこんだ?
まだ 1.1.7 使ってて 1.2 系は試してないけど
付属の jar 入れとけば間違いは少ないと思う。

469 名前:461 mailto:age [2005/08/10(水) 20:53:28 ]
ageます。スマソ。

>>467
asm-1.5.3.jar
cglib-2.1_2.jar
をWEB-INF/lib/に放り込んでクラスパス通すだけでつ。
「ProxyFactoryBean使うときはCGLIB入れろ」
ってドキュメントに書いてあったのですが、
CGLIB使うときはASM入れないないとNGなんで、
ttp://prdownloads.sourceforge.net/cglib/cglib-2.1_2.jar?download
ttp://forge.objectweb.org/project/download.php?group_id=23&file_id=3084
のミラーからDLしてください。

…というコトではない?


470 名前:デフォルトの名無しさん mailto:sage [2005/08/10(水) 21:14:42 ]
with-dependency の方のディストリビューション落とせば
添付の jar を必要に応じて加えるだけで
外部のライブラリは不要だったと思うんだけど。。

471 名前:461 mailto:sage [2005/08/10(水) 21:47:00 ]
>>470
サンクス。

>with-dependency
こっちじゃなくて、spring-framework-1.2.3.zip落としちゃって…。

ttp://www.techscore.com/tech/Others/Spring/1.html
にしっかり書いてありました。orz


472 名前:デフォルトの名無しさん mailto:sage [2005/08/19(金) 12:55:20 ]
Spring Beans XML Editor (Spring IDE for Eclipse)
ttp://springide.org/project/wiki/BeansXmlEditor
Screen Shot 見る感じだと
とりあえず欲しい機能は結構揃っているような。

473 名前:デフォルトの名無しさん mailto:sage [2005/08/25(木) 16:33:37 ]
www.springframework.org/springide/release-123

474 名前:デフォルトの名無しさん [2005/09/07(水) 09:38:35 ]
KingはRodが大嫌いなんだとさw

houseofhaug.net/blog/archives/2005/08/12/hibernate-hates-spring/

475 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 09:53:15 ]
Hibernate3 でトランザクション周りが結構変わって、
Spring とかなり方向違うなぁと感じたりはする。

Hiernate の Session Factory から getCurrentSession() 呼んだら
思いっきり怒られたりとか。
JTA が必要だったとは知らなかった。

なんかそんなことが続いてる。。

476 名前:デフォルトの名無しさん mailto:sage [2005/09/13(火) 23:10:59 ]
Springを勉強してます。
サーブレットにDIしたいクラスのsetter作って
動かしてみたのですが、NullPointerException...
サーブレットではsetterインジェクション(?)できないんですか?
ContextからgetBeanすれば普通にとれるんですが。。


477 名前:デフォルトの名無しさん mailto:sage [2005/09/14(水) 00:14:32 ]
>>476

普通はBeanにsetter/getter作るでしょ。
むしろ、setter/getter作ると自然にBeanになる。
MVCからやり直s(ry




478 名前:デフォルトの名無しさん mailto:sage [2005/09/14(水) 00:27:50 ]
>>476
サーブレットでDIするためにどういう設定したの?

479 名前:デフォルトの名無しさん mailto:sage [2005/09/14(水) 00:40:33 ]
>476
Webコンテナが管理しているサーブレットインスタンスを
そのサーブレットが呼ばれる前に,アプリ側から取得する方法があるとでも?

480 名前:デフォルトの名無しさん mailto:sage [2005/09/14(水) 01:39:52 ]
しかし、いろんなこと考える奴がいるもんだな・・・ある意味感心したw

481 名前:デフォルトの名無しさん mailto:sage [2005/09/14(水) 02:41:41 ]
>>479
web.xmlにはプロキシサーブレットを登録して、そのときパラメータで実際のサーブレットクラスを指定するような実装にすればできんでもない。

482 名前:476 mailto:sage [2005/09/15(木) 01:29:23 ]
>>477-481
勉強不足でごめんなさい。
サーブレットからビジネスロジックを呼び出すのに
自分でビジネスロジックのインスタンスを作らずに、
setterを作って、ビジネスロジックをDIしようとしたのですが。。。
やっぱり無理なんですかね?

483 名前:デフォルトの名無しさん mailto:sage [2005/09/15(木) 02:32:53 ]
>>482
便乗してTapestryの宣伝でもしてみるか。

Tapestry-4.0だと、それに相当する事が出来るようになってる。
Tapestry-4.0自体はDIコンテナにHiveMind使ってるけど、
HiveMindとSpringを連携させる方法もあるので、
Springで管理してるオブジェクトをTapestryのページや
コンポーネントにDIすることできて便利。


484 名前:デフォルトの名無しさん mailto:sage [2005/09/15(木) 03:15:06 ]
>>483
日本語のドキュメントはどこにありますか?

485 名前:デフォルトの名無しさん mailto:sage [2005/09/15(木) 16:21:13 ]
あなたはいぢわるな人だ

486 名前:デフォルトの名無しさん [2005/09/19(月) 09:44:33 ]
で、実際に開発で使ってる実績ってあるの?
Spring。

487 名前:デフォルトの名無しさん mailto:sage [2005/09/19(月) 09:47:35 ]
何をもって実績と呼ぶかを定義しないと
そりゃどっかで使ってるさ。で終わってしまう。



488 名前:デフォルトの名無しさん [2005/09/19(月) 19:12:43 ]
どっかって・・・。
どこでも使ってないんじゃないの、と思ってるんだが。

489 名前:デフォルトの名無しさん mailto:sage [2005/09/19(月) 20:59:49 ]
おれんとこの現場は使ってる

490 名前:デフォルトの名無しさん mailto:sage [2005/09/19(月) 21:06:20 ]
>>488
そうかもね。

というか、DI自体にメリットというか魅力を感じない。
いや、考え方とかそういったのは素晴らしいと思うよ。

だけど、実際には客先にコストダウンとかのメリットがある訳じゃないし、
実行速度が上がるわけじゃない。
まぁ、テストを簡単に行えて品質は上がるのかもしれない。


だけど、問題は、DI使ったからといって、修正とかが楽になるかと言えば、答えはNO。
大抵の修正はメソッドの呼び出しとか、そういったものまで結構変更になる。

なのに、下手にDI使ってインターフェースとか定義してたら、
結局インターフェースもクラスも関連するもの全部修正しないといけない。

つまり、殆どの場合、DI使うことにより、修正の手間は倍以上になる。
作る時に、無駄ともいえるものを作るんだから、下手したら4倍近い手間。

世間がこれからどうなるか知らないが、すくなくても俺の会社では
DIは明示的には使わないという方向で決まった。
(ライブラリの内部とかで使われてるとかは知ったこっちゃ無い)

491 名前:デフォルトの名無しさん mailto:sage [2005/09/19(月) 22:21:44 ]
インターフェイスをきるときには、システム将来計画等から予想して、
ある程度変更になりそうな部分を見極めとかないと意味は無い
DIか否かより、結局は設計の問題になると思うけど

492 名前:デフォルトの名無しさん mailto:sage [2005/09/19(月) 23:06:57 ]
>>490
君の言ってることはDIとは直接関係ないかなぁ。
単にインターフェースへのプログラミングってやつの是非を語っているだけではないのか?
まぁ、それも確かに賛否両論よく議論されているネタだけどね

DI使うと部品作って組み立てるプロセスが面白くて、楽しく開発は出来るんだけど、
アホには使いこなせないからあまりポピュラーにはならないかもしれない

493 名前:デフォルトの名無しさん [2005/09/20(火) 00:09:30 ]
SimpleFormControllerでvalidatorを行おうとしています。

<bean id="confirmEntryController" class="controller.ConfirmEntryController">
<property name="commandClass"><value>model_entity.User</value></property>
<property name="commandName"><value>user</value></property>
<property name="validator"><ref local="userValidator"/></property>
<property name="formView"><value>userEntryView</value></property>
<property name="successView"><value>confirmView</value></property>
</bean>

エラーを表示するのに、spring:bindを利用しているのですが、
-------------entry.jsp-----------------------------------------
<spring:bind path="user.name">
<FONT color="#FF0000"><c:out value="${status.errorMessage}"/></FONT>
</spring:bind>

entry.jspを表示するときに、次のようなエラーになってしまいます。
javax.servlet.ServletException: Neither Errors instance nor plain target object for bean name 'command' available as request attribute

なにか見落としがあるのでしょうか?
あうあぅ締め切りがあさってです。助けてください・・・

494 名前:デフォルトの名無しさん [2005/09/20(火) 00:11:05 ]
あーーすみません
エラーメッセージがまちがっていました。。
javax.servlet.ServletException: Neither Errors instance nor plain target object for bean name 'user' available as request attribute


495 名前:デフォルトの名無しさん mailto:sage [2005/09/20(火) 01:41:00 ]
まだ490みたいなこと言う人居たのか。すげえな。世の中って。

496 名前:デフォルトの名無しさん mailto:sage [2005/09/20(火) 02:29:53 ]
MVC フレームワーク使ったことないんで
(Viewは絶対にVelocityが良い派。
コントローラはStrutsがベタ打ちっぽくて好き派。)
大きく外してるかも知れませんが

ttp://64.233.179.104/search?q=cache:LDvUSmAKRi8J:xlegend.dip.jp/~hamasyou/archives/Engineer-Soul/springframeworkneooiaieaadiiocmvcweb.php+spring.bind+ServletException+Neither+instance&hl=ja
>Bind 時に
>javax.servlet.ServletException: Neither Errors instance nor plain target object for bean name 《コマンド名》 available as request attribute
>という例外が発生する事があります。 これは、Bind するコマンドオブジェクトがリクエストに保存されていないのが原因です。
>コントローラに SimpleFormController を使っている場合、processFormSubmission() メソッドで、
>super.onSumit(request, response, command, errors) を呼び出すと、例外は発生しなくなりました。参考までに。
ConfirmEntryController でそれに類する処理が必要かどうか、存在するのかの確認と、
デバッガで動かしてリクエストの中身を覗いてみてはどうでしょうか?

497 名前:デフォルトの名無しさん mailto:sage [2005/09/20(火) 20:30:51 ]
>>495
そうでもないんじゃない?

実際、ある程度予測できる範囲やちょっとした修正なら、DIだろうが何だろうが修正は簡単。
だけど、大抵の場合って、そもそもの仕様から引っくり返されるんだよね。

『ごめん。やっぱりこの機能も追加して』って一言で。

そうなると、確かに>>490の言うような状態に陥る。



498 名前:デフォルトの名無しさん mailto:sage [2005/09/21(水) 01:34:49 ]
インターフェース直して、テストコード直して、実装直す。
簡単ジャマイカ

499 名前:デフォルトの名無しさん mailto:sage [2005/09/21(水) 01:44:41 ]
>>497
顧客の「やっぱり」が予想できる場合と出来ない場合で違うと思う
予想できない場合は、たとえどんな作り方をしてても無駄なわけだし

500 名前:デフォルトの名無しさん mailto:sage [2005/09/21(水) 03:19:34 ]
DIの肝って、「実装を交換できる」ってこと。
あとは想像力さえあれば、大抵の状況は、インターフェイスの修正無しになんとかできるはずだが。
まぁ、インターフェイスの設計がへぼいとどうにもならない場合があるけど。

501 名前:デフォルトの名無しさん mailto:sage [2005/09/21(水) 05:36:55 ]
べつに、実装交換しなくても便利なんだけど。
実際のアプリケーションでDIでつなげたクラス同士を切り替えることなんてほとんどない。
それでも、つなげることをやってもらえるだけで便利。

502 名前:デフォルトの名無しさん mailto:sage [2005/09/21(水) 23:44:25 ]
>>501
コードでつなげる処理を書くよりも便利なの?

やっぱり自分で試して体感してみるしかないかな。

503 名前:デフォルトの名無しさん mailto:sage [2005/09/22(木) 06:51:23 ]
自分でさわらずに批判してもしかたないよ。

504 名前:デフォルトの名無しさん mailto:sage [2005/09/22(木) 09:06:33 ]
DI に関する話をココでやって
Springの話をDIスレでやると言う
ねじれ現象が起きてるのは何故ですか?

505 名前:デフォルトの名無しさん mailto:sage [2005/09/22(木) 11:53:07 ]
ながいものはねじれるというのが物理法則の基本だから。

506 名前:デフォルトの名無しさん mailto:sage [2005/09/23(金) 09:54:47 ]
そもそもDIスレなんてのかあったのかって話。

507 名前:デフォルトの名無しさん mailto:sage [2005/09/23(金) 17:54:03 ]
>>506
Dependncy Injectionを語るスレ
pc8.2ch.net/test/read.cgi/tech/1099827125/



508 名前:デフォルトの名無しさん mailto:sage [2005/09/23(金) 23:10:30 ]
多少綴りが間違ってるのと、DI という略語を併記しなかった失策っぽい。

509 名前:デフォルトの名無しさん mailto:sage [2005/09/24(土) 03:31:24 ]
>>507
一月半もレスないのか。
S2スレはFAQの件で盛り上がっているというのに……。

510 名前:デフォルトの名無しさん mailto:sage [2005/09/24(土) 03:33:09 ]
本題ではあまりもりあがらない件

511 名前:デフォルトの名無しさん [2005/10/05(水) 11:18:48 ]
>>449の件って、>>454が正解なんですか?
だれか解説お願いします。

512 名前:デフォルトの名無しさん [2005/10/19(水) 09:37:25 ]
こんな記事があったんですが、Springが主流になりますかね?
ttp://www-128.ibm.com/developerworks/java/library/j-sr2.html

513 名前:デフォルトの名無しさん mailto:sage [2005/10/19(水) 10:43:13 ]
>>512
読めん!

514 名前:512じゃないけど mailto:sage [2005/10/19(水) 16:48:17 ]
>>513
これなら読めるか?
www-06.ibm.com/jp/software/websphere/developer/j2ee/lightweight/

515 名前:デフォルトの名無しさん mailto:sage [2005/10/19(水) 17:50:56 ]
>>514
読める!

516 名前:デフォルトの名無しさん [2005/10/23(日) 21:45:48 ]
おまいら、SpringのTransaction管理って使ってますか?


517 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 22:15:15 ]
使ってない。
むしろ自分でトランザクションコード書いた方が安心する。
別に大した労力じゃないし。
分散トランザクションやろうとしたら別だけど。



518 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 22:20:08 ]
そしてデッドロック

519 名前:デフォルトの名無しさん mailto:sage [2005/10/23(日) 22:26:25 ]
デッドロックに対して気をつけなきゃいけないことは、トランザクション管理も
ハードコーディングも一緒なり

520 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 00:00:28 ]
>>517
try/finally/try/catchをいちいち書くの面倒じゃない?

521 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 00:22:16 ]
>>520
書くと安心するw
いたるところで書くわけでもないし苦痛でもない。

522 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 14:16:34 ]
ひとりとかふたりで開発するならそれでもいいんだけどねぇ。
人数多くなってわけわかんないコーダーが含まれるようになると、それじゃ怖い。

523 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 15:15:19 ]
投げて上で処理するとか。
一箇所で処理できる仕組みであれば何でもいいけどな漏れは。

524 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 17:24:13 ]
投げて上で処理ってどういうこと?
上でconnection.rollback();
を実装するという意味だよな?

525 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 21:00:01 ]
>>523
その為にAspectとか有るんじゃないか?

526 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 21:21:21 ]
そこでEntity Beanですよ。

527 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 23:28:43 ]
コミット、ロールバックもろもろ書いてあるメイン処理テンプレートソース
用意してコレ使えという。



528 名前:デフォルトの名無しさん mailto:sage [2005/10/24(月) 23:32:53 ]
要するにAOPは使いたくないってこと?

529 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 00:27:49 ]
トランザクションだけはコードで書きたい。

530 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 09:47:45 ]
テンプレートを使うやり方ってtransactionScriptみたいなヤツ?
あれって複数Daoに更新命令メッセージ渡したい時にうまくasid守れるのだっけ?
ドアホな質問だったらスマソ

>>529
自作インタセプタでAOPするのも嫌なの?

531 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 10:35:43 ]
ACID

532 名前:530 mailto:sage [2005/10/25(火) 11:30:31 ]
し、しまった、ゴメン恥sage

533 名前:デフォルトの名無しさん [2005/10/25(火) 21:41:41 ]
Seasarを選ばなかったおまいらは非国民

534 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 21:55:08 ]
日本で作ったところくらいしか、とりたてて特徴がないからなぁ。
逆にSeasar選ぶのは国粋主義だとは言える。

535 名前:デフォルトの名無しさん mailto:sage [2005/10/25(火) 23:30:51 ]
>>530
>>インタセプタ
それならいいかも。コードかけるから。

536 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 01:28:04 ]
>>534
国粋主義が悪いかのように匂わす藻舞は共産主義者

537 名前:デフォルトの名無しさん [2005/10/26(水) 01:34:42 ]
>>536
ウヨ厨発見。
「国粋主義」ってそもそも悪口だし。悪いに決まってる。



538 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 10:14:29 ]
Javaが日本発な言語でない以上、
Seasar2もSpringもその意味では五十歩百歩だろ。
使いやすい方使えばいいのよ。

539 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 13:35:27 ]
>>534
どっちがいいのかは個人の判断だと思うけど、
かなり違うよSpringとSeasarは。

特徴がないと思っているのは単なる勉強不足。

540 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 16:42:29 ]
>539
で、両者の顕著な違いってどの辺り?
軽量DIコンテナ+AOPサポートって言う
コアな考え方が同一な以上、
枝葉は多少異なるだろうけど、
幹の部分は大差なく感じるんですが。

それぞれのサブプロジェクト(MVCフレームワークとか)は
モデルが大きく異なるだろうけど、限りなく枝葉な問題だし(私には)。
そこの違いがでかいんだよと言われると、大変困るが。

541 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 16:59:35 ]
ロジックとかDAOを呼び出すだけで使ってる分にはあまり差を感じないけどな。

542 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 17:18:39 ]
>>540
DIだとあまり変わらないかもね。

ただ、Seasarの新しいバージョンだと、DIが結構変わったみたい。
XMLはほとんど書かないらしい。

AOPは結構違う。
JavaWorldに出てたけど、同じAOP AllianceのAPIにもとづいているとは
思えないくらいに設定の仕方が違う。

543 名前:デフォルトの名無しさん mailto:sage [2005/10/26(水) 20:24:41 ]
設定方法なんか、どうだってなるわけだが。

544 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 00:49:30 ]
DIやAOPよりも、自前でJTA実装用意してるかどうかが大きい気がする
Tomcatやローカルアプリに対して、安定したJTA環境+AOPによる宣言トランザクションを提供出来るというのが
自分から見たS2の売りかな?
Springも外部のJTA実装を用意すれば一緒なんだけど、出来ればSpring内で実装まで用意して欲しい

545 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 09:37:46 ]
ん〜、煽りじゃなくて教えて欲しいのだが、自前JTAってそんなにいいの?

どうせAP鯖上で動くならそのAP鯖のJTA使えばいいと思う。
つっか、AP鯖のJTA使うと、提供されている管理画面を
使えちゃったりして便利なんだよね。使用状況とか一目瞭然だし。

546 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 11:05:18 ]
>>545
> どうせAP鯖上で動くならそのAP鯖のJTA使えばいいと思う。

AP鯖ならそれ使えばよろし。
「Tomcatやローカルアプリ」の場合の話。

547 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 11:50:06 ]
JOTMとか?

というか部品を用意してあるかどうかなんて些細な差と言うか、
そもそも比較項目にすらならん気がする。

224 にも張られた内容見るといろいろ差があるなとは思う。
結局AOPに対するアプローチが一番の違いか?
Spring はどこまでも POJO マンセーな感じ。
良い意味でも悪い意味でも。



548 名前:デフォルトの名無しさん [2005/10/27(木) 12:38:18 ]
>>547
JTA実装するかしないかの差は、両者のトランザクション管理に対する考えの違いでもある。
JTAを標準としてJDBCトランザクションを排除していこうとしてるのがS2
JDBCもJTAも、DIコンテナがラップして利用者に統一的に使って貰おうとしてるのがSpring

549 名前:デフォルトの名無しさん mailto:sage [2005/10/27(木) 12:39:51 ]
>>547
POJOマンセーはSeasarのほう。
Springには、何かしたかったら、こういうインターフェースを実装しろ
というのがいろいろあるけど、Seasarはそういうのがほとんど無い。

550 名前:デフォルトの名無しさん mailto:sage [2005/10/28(金) 01:25:53 ]
jsfを使うんだけどspringはどの段階で作り始めればいいんですか?
ある程度jspとかbeanとか決まってから?

551 名前:デフォルトの名無しさん mailto:sage [2005/10/28(金) 09:21:16 ]
>>550
君の脳内が整理されたら。

552 名前:デフォルトの名無しさん mailto:sage [2005/10/28(金) 10:56:12 ]
Spring 自体は作らんだろ。作らんよね?
Spring 自体は作りませんね。

553 名前:デフォルトの名無しさん mailto:sage [2005/10/28(金) 14:25:10 ]
そんなレスはいらんねん

554 名前:デフォルトの名無しさん mailto:sage [2005/10/28(金) 18:52:00 ]
なんかすごいヤシが来たな、ワクワク

555 名前:デフォルトの名無しさん mailto:sage [2005/10/30(日) 17:47:22 ]
(・∀・)ハイーキョ

556 名前:デフォルトの名無しさん mailto:sage [2005/10/30(日) 21:02:51 ]
>>555
気が早いよ。ヽ(`Д´)ノ
もう少しまってろ。

557 名前:デフォルトの名無しさん mailto:sage [2005/10/31(月) 01:27:45 ]
保全



558 名前:デフォルトの名無しさん mailto:sage [2005/10/31(月) 14:31:11 ]
ところで、Springを使ってサービスを2つ起動しているけど
片方のサービスを止めたり、動かしたりする場合のサンプリングが解らず・・・・

筆不精で表現が不十分ならすまん・・・。

559 名前:デフォルトの名無しさん mailto:sage [2005/10/31(月) 14:49:38 ]
>>558
サービスとSpringは直接関係ないだろ。

560 名前:デフォルトの名無しさん mailto:sage [2005/10/31(月) 14:50:21 ]
つうか、サンプリングって新しいな、おい。

561 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 13:36:58 ]
統計やってるんだろう

562 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 14:30:30 ]
springとhibernateを使ってるのですが、以下のようなコードでDBからデータを取得した時に
ログ情報はどうやって出すのでしょうか?
出したい情報としては、どのテーブルに、どんな条件で取得or更新処理等を行っているかです。
SQLの場合は、SQLそのものをログに出せば良かったのですが、spring+hibernateになった場合
SQLの時と同等の内容をログに出力する方法が分からなくなってしまいました…。

Hoge hoge = (Hoge)getHibernateTemplate().get(Hoge.class, primaryKey);

このgetの中でやっている事をログに出したいです。

563 名前:デフォルトの名無しさん mailto:sage [2005/11/01(火) 19:08:20 ]
Hibernate の設定でログにSQLを吐くってのがあったはず。

564 名前:デフォルトの名無しさん mailto:sage [2005/11/02(水) 00:43:48 ]
springの設定でhibernatePropertiesに
<prop key="hibernate.show_sql">true</prop>
を設定

565 名前:デフォルトの名無しさん mailto:sage [2005/11/02(水) 10:31:05 ]
>>563,564

ありがとうございます!
おかげさまで、SQLは出力されるようになったのですが、
出力されるSQLのWHERE句の条件部分が、実際の値に置換する前の「?」に
なってしまいます….
この「?」の部分が実際の値に置換された状態のSQLを出力する事は出来ないのでしょうか?

566 名前:デフォルトの名無しさん mailto:sage [2005/11/05(土) 20:04:59 ]
さっぱり関係ないんだけど、PreparedStatementに値が入れられた後のSQLを
吐き出させられないかと思うことはよくあるな。

567 名前:デフォルトの名無しさん mailto:sage [2005/11/05(土) 20:42:17 ]
DB側でログだすしかないね。
JDBC4でやってくれないのかなぁ



568 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 00:19:10 ]
そもそもJDBC内で完全なSQL生成してるわけじゃないから無理だよな。
そんなことしてたらPrepareStatement意味ない。。

569 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 01:52:33 ]
なんかのクラスのログレベルを下げれば、
どんなパラメータを入れたか確認できるけど一応。
どのクラスかは会社に居ないので確認できましぇん

570 名前:デフォルトの名無しさん mailto:sage [2005/11/06(日) 15:24:20 ]
Spring + Hibernate3 でテストしてた時は
パラメータも表示されてたと記憶してるが。

571 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 09:55:19 ]
ドライバにトレースオプションとか無いの?

572 名前:デフォルトの名無しさん mailto:sage [2005/11/08(火) 01:15:17 ]
>>566
p6spyってのを使えばできるらしいよ。

573 名前:sage [2005/11/13(日) 01:07:52 ]
SpringWebMVC使ってるんだけど、
フォーム上の二つの入力フィールドの値を、
コマンドオブジェクトの一つのプロパティにBindすることってできないんだろうか?

574 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 01:12:45 ]
JavaScriptFrameworkかとおもた

575 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 13:14:15 ]
よし、今からSpringを勉強するよ。
指示をくれ
とりあえずダウンロードしてくるわ

576 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 13:35:02 ]
spring-framework-1.2.5-with-dependencies.zipをダウンロードして
Eclipseに展開
その間に
www.atmarkit.co.jp/fjava/rensai3/springdi01/springdi01_1.html
これを読んでる

577 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 13:39:20 ]
なにこれ?
あほですか?
ただ、指定のクラスを生成して、ついでにプロパティも入れるというだけ?
くだらん。
ただのFactoryじゃん。
messageを生成時に注入してHello World!かよ。
おめでてーな。
まあ、記事が馬鹿だということを予想して付属のSampleためしてくるよ。



578 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 13:43:19 ]
>> Spring Frameworkで理解するDI(1)
(2)は、まだー?


579 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 13:53:10 ]
>>578
もちろん1,2,3を読んでの感想ね。
いま、ExampleのCountryを読んでるんだけど、
いきなりソースを読んでも意味わからんわ。

それぞれのクラスが他に依存しないってことは
Utilを読むみたいに、いきなり読めるってことかと思ってしまった。

今から/samples/countries/*.txtを読んでデプロイして実行してみる。

580 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 14:08:34 ]
日本用のpropertiesがないからぬるぽい。
適当になぶる

581 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 14:59:14 ]
解説しよう
なぶる = 触る

582 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 16:09:48 ]
解説ありがとう
今から外出しないといけなくなった
とりあえずどんな実装をしていくかという
癖みたいなものはわかった。
出たついでに本屋にでも寄って理論を立ち読みしてくるわ

583 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 18:13:33 ]
ぬるぽ

584 名前:デフォルトの名無しさん mailto:sage [2005/11/13(日) 22:40:28 ]
帰ってきたよ
理論読んでくるの忘れたから、検索するわ
あとで

585 名前:デフォルトの名無しさん [2005/11/17(木) 20:48:05 ]
1.2.6記念

586 名前:デフォルトの名無しさん mailto:sage [2005/11/28(月) 11:55:56 ]
閑古鳥だな

587 名前:デフォルトの名無しさん mailto:sage [2005/11/28(月) 12:00:14 ]
DIは結局流行り物だってこった。

DIスレもSeasarスレも活気ないしな。



588 名前:デフォルトの名無しさん mailto:sage [2005/11/28(月) 12:06:55 ]
需要は大いにあるけど、
言語レベルでの制約によるメリットが一部損なうことや、
リファクタリングがかなりし難くなるところがやはり気に食わないな。

589 名前:デフォルトの名無しさん mailto:sage [2005/11/28(月) 12:33:48 ]
DIコンテナがなくても
SetterInjectionとFactoryでいいけどさ。
AOPと親和力が高いのが魅力的だよね。
抜け出せない。
遅いのに。

590 名前:デフォルトの名無しさん mailto:sage [2005/11/28(月) 13:15:50 ]
つか、もうEJB3でおけ

591 名前:デフォルトの名無しさん mailto:sage [2005/11/28(月) 13:18:05 ]
でも「EJB?ハァ?これからはSpringだろ」
てのを受けて試しにSpring触って第一印象が>>577ってパターンが結構多い気がするな。

592 名前:デフォルトの名無しさん [2005/11/28(月) 20:17:43 ]
フロントしか弄ってない俺には、Strutsの焼き直し。

593 名前:デフォルトの名無しさん [2005/11/28(月) 21:17:10 ]
今って分散環境だとビジネスロジックには
何が一番使われてんの?

594 名前:デフォルトの名無しさん mailto:sage [2005/11/28(月) 21:21:10 ]
あ、これじゃいみわかんねえや
モデルだった

595 名前:デフォルトの名無しさん mailto:sage [2005/11/28(月) 22:32:06 ]
>>592
Strutsとは全くかぶってないので、StrutsをどうやきなおしてもSpringにならない・・・

596 名前:デフォルトの名無しさん mailto:sage [2005/11/28(月) 22:33:25 ]
>>595
フロントコントローラ、まんまStrutsなんだが。

597 名前:デフォルトの名無しさん mailto:sage [2005/11/29(火) 00:09:53 ]
これってどこがいいの?
XMLからクラスが生成できるだけ?



598 名前:デフォルトの名無しさん mailto:sage [2005/11/29(火) 00:22:41 ]
>>595
次の次ぐらいのStrutsはWebWorkになるそうだぞ。


599 名前:デフォルトの名無しさん mailto:sage [2005/11/29(火) 00:25:00 ]
ん?IDEと統合するのを目標に作られたJSFがあるからそれはないべ?

600 名前:デフォルトの名無しさん mailto:sage [2005/11/29(火) 00:34:16 ]
>>599
ほれ。
ttp://www.mail-archive.com/dev%40struts.apache.org/msg13815.html


601 名前:デフォルトの名無しさん mailto:sage [2005/11/29(火) 00:37:30 ]
もうひとつ。
ttp://blogs.opensymphony.com/webwork/2005/11/webwork_joining_struts.html
スレ違い。失礼。


602 名前:デフォルトの名無しさん mailto:sage [2005/11/29(火) 00:42:46 ]
>>600-601
えーーーー。
なんかすっげー違和感・・・。

603 名前:デフォルトの名無しさん mailto:sage [2005/11/29(火) 12:19:40 ]
>リファクタリングがかなりし難くなる
なるか?
設定ファイル書き直しの手間が云々って意味?

604 名前:デフォルトの名無しさん mailto:sage [2005/12/01(木) 20:40:22 ]
SpringFrameworkのDefaultIntroductionAdvisorと
DelegatingIntroductionInterceptor の使い方がやっと分かった。

AOPヽ(´ー`)ノマンセー


605 名前:デフォルトの名無しさん mailto:sage [2005/12/06(火) 10:25:25 ]
使う場所を見つけるまでがAOPです

606 名前:デフォルトの名無しさん mailto:sage [2005/12/08(木) 08:03:22 ]
AOPとDIと、どっちが偉いの?

607 名前:デフォルトの名無しさん mailto:sage [2005/12/08(木) 08:41:40 ]
別々の話だから、比べてもしかたない。



608 名前:デフォルトの名無しさん mailto:sage [2005/12/08(木) 09:35:46 ]
どっちも偉くはないですが

609 名前:デフォルトの名無しさん [2005/12/10(土) 23:50:35 ]
muimi.com/j/aop/spring/
SpringのHello Worldでどのサイトをみても
これ以上のことがどこも書いていないのですが
どういった点が優れているのでしょうか?

いまいちこのフレームワークが他よりも優れいているというメリットが見えないのですが
また具体的に何が得意とかあるのでしょうか?


610 名前:デフォルトの名無しさん mailto:sage [2005/12/11(日) 01:16:39 ]
他ってなんのことを言ってるの?

611 名前:デフォルトの名無しさん [2005/12/11(日) 15:13:00 ]
みなさん実際に実務だとどんなところにSpring使ってます?
全面的に使ってたりする?

612 名前:デフォルトの名無しさん mailto:sage [2005/12/11(日) 15:47:19 ]
Springは使うなら全面的だろ。

613 名前:デフォルトの名無しさん [2005/12/11(日) 15:49:33 ]
>>612
大根としてつかうだけならどこか1部だけでもOKでは。

614 名前:デフォルトの名無しさん mailto:sage [2005/12/11(日) 16:10:46 ]
>>613
たとえばStruts使う場合だと、すべてのActionをSpringに委譲するし。

615 名前:デフォルトの名無しさん [2005/12/11(日) 16:14:12 ]
>>614
具象オブジェクトの生成部分を切り出す単位って、そこしかないわけか
オイ?モットどこにでもあるでしょうがよ。

616 名前:デフォルトの名無しさん mailto:sage [2005/12/11(日) 16:20:57 ]
???

617 名前:伝説新人タクシ mailto:sage [2005/12/11(日) 16:23:20 ]
>>609
疎結合であるとかそれによって単体テストがしやすいとかいうこと?



618 名前:デフォルトの名無しさん mailto:sage [2005/12/11(日) 17:11:40 ]
Springわかんなかったんなら、EJB3を待ってたほうがいいかもね。

619 名前:デフォルトの名無しさん mailto:sage [2005/12/11(日) 17:54:34 ]
予習でやるならともかく、今の流れだと、これから本格的にSpring使うってのはなしなきがするな。
だから、逆に絶対やっといても損はない気がするけどさ。

620 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 10:29:59 ]
そんな難しいものじゃないし、画期的な機能に満ち溢れているわけでもないよ。
ただ単に便利なツールでいいのだと思うけど。
便利なBeanFactory、それで充分だよ。

おまけで付いてくる付属品はけっこういいよ。
AOPもそうだし、ORMやらmailやらが楽チンに扱えるのも嬉しい。

S2でもSpringでもどっちでもいいけど、これがない世界には戻りたくないね。

EJB3があれば不要という話もあるね、GabinKingが主張しているように。
でもSpringを通してEJB3を使った方がより簡単、そういう機能が出てくるって予想してる。

621 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 10:36:16 ]
というか、普通のTomcatで動かせて面倒なパッケージング不要なEJB3、みたいな感じになると思う。

622 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 10:36:44 ]
追伸:煽るワケじゃないが、Springごときを理解できない方が
EJB3を使いこなせるとは思えない。Annotationの裏で
起こっている出来事を多少は理解している必要はある、って
認識の元の考えだけど。

623 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 10:58:46 ]
Springってかなり裏方的な働きだから、単体ではよさがわかりにくいんだと思う。
EJB3でも、単にORマッピングだという認識で、なんだか裏側で勝手に結びつけてくれるという感じになるんじゃないかな。

624 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 16:27:03 ]
EJB3 って来ると思う?
Java ソースにアノテーション埋め込むのと
設定ファイルに外出しされてるのと
どっちが疎結合か考えたら
EJB3 は退化してるとしか思えない。

625 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 18:56:40 ]
アノテーションで疎結合じゃないという話は、すでに時代遅れだし、EJB3が来ないと思うなら、別の部分で批判しないといけない。

626 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 19:05:38 ]
簡単に理由をいえば
「疎結合のためにアノテーションを排除して、なんの意味がある?」

627 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 20:42:36 ]
プゲラ
おまいらどうせ来年にはAnnotationに文句垂れてると思うよ、飽きっぽいから。




628 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 21:45:25 ]
>>627
いや、それはそれで良いんじゃねぇの?
不満がなければ技術革新なんてねぇさ。

629 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 21:58:43 ]
Annotationの仕様には不満があるけど、Annotation自体はとても気に入ってるよ。

630 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 22:25:06 ]
Springで簡単なWebアプリを作るサンプルがあるサイトしらない?
WebApplicationContextを使って云々みたいな。。。

631 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 22:28:53 ]
Struts使った方が楽だからねぇ・・・

632 名前:デフォルトの名無しさん mailto:sage [2005/12/12(月) 22:53:59 ]
AnnotationとEnumの組み合わせが好きだな
XDocletとは違って定数を指定できるし、引数の型チェックも出来る

633 名前:デフォルトの名無しさん mailto:sage [2005/12/13(火) 02:02:54 ]
StrutsよりもJSFをもう少し簡単にした物を使いたい

634 名前:デフォルトの名無しさん [2005/12/13(火) 09:39:22 ]
>>630
ほらよ

www-06.ibm.com/jp/software/websphere/developer/j2ee/lightweight/
www5f.biglobe.ne.jp/~webtest/myapptutorial/index.html
https://appfuse.dev.java.net/
https://equinox.dev.java.net/

勧められるのは、ビジネスロジックレイヤ内にサービスレイヤを
作ってるヤツ。(Facadeかけてるやつ)

とりあえずIBMのヤツを熟読しろ。

635 名前:教えてください [2005/12/13(火) 21:35:54 ]
左クリックを使用できないようにjavaScriptを組んだつもりでしたが、機能しません。
どこが間違ってるのかご指南ください。

問題のHP urei.ojaru.jp/top.htm
フレームを使用してますが 
Images→***のリンク→左使用不可ページ となってます。

*** のページ 左使用不可ページ直リン防止script
左使用不可ページ 左使用不可script

このようにしたのですが・・・・・・・マイリマシタ
もうどうしていいのか分りません

636 名前:デフォルトの名無しさん mailto:sage [2005/12/13(火) 22:01:21 ]
>>635 はスレ(板?)違いの上に、マルチ

637 名前:デフォルトの名無しさん mailto:sage [2005/12/14(水) 10:05:47 ]
板違いというより、基地外



638 名前:デフォルトの名無しさん mailto:sage [2005/12/16(金) 02:08:32 ]
Spring.NETの方はどうですか?
同じ?

639 名前:デフォルトの名無しさん mailto:sage [2005/12/16(金) 13:48:47 ]
>>638
Spring.NETは基本的なDI・AOPの機能は既に実装済み。
DB、トランザクション、WEB等の機能はまだ開発中みたいだな。

だけど、正直.NETでDIは使う気にならないな。

640 名前:デフォルトの名無しさん mailto:sage [2005/12/17(土) 13:07:47 ]
>>639
何故?


641 名前:デフォルトの名無しさん [2005/12/24(土) 12:10:09 ]
ActionSupportを使ってStrutsとSpring連携させてるんだけど
このクラスのテストケースをstrutstestcaseを使って書こうとした時に
Actionから呼び出すBeanを変えてテストケース書きたい場合
Bean定義のXMLを変えるしか方法がない?

テストケース側からビジネスロジックの注入を書けると楽なんだけど、、、


642 名前:デフォルトの名無しさん mailto:sage [2005/12/25(日) 01:54:24 ]
自分で注入しちゃったら?

643 名前:デフォルトの名無しさん mailto:age [2005/12/26(月) 01:34:51 ]
Struts + Sringでエ○画像掲示板つくってみました。
Spring入れたほうが動作は安定して早くなりました。

644 名前:デフォルトの名無しさん [2005/12/26(月) 11:56:02 ]
>>642

その方法がわからないんだよう
ポインタなぞあったら教えてぎぶみー

645 名前:デフォルトの名無しさん mailto:sage [2005/12/28(水) 07:47:52 ]
Spring2.0って機能面ではどう変わったんですか?

646 名前:デフォルトの名無しさん mailto:sage [2005/12/28(水) 07:55:33 ]
>>644
セッターインジェクションの場合
setXxx(value);

フィールドインジェクションの場合
xxx = value;

で注入できますw

647 名前:デフォルトの名無しさん mailto:sage [2005/12/28(水) 14:12:36 ]
>>645
設定ファイルがXML Schemaベースになってる。



648 名前:デフォルトの名無しさん mailto:sage [2005/12/29(木) 12:31:25 ]
Important new features include:

* Simplified, extensible XML configuration
* Powerful new Spring AOP features and AspectJ 5 integration
* Asynchronous JMS facilities enabling message-driven POJOs
* Spring Portlet MVC, a MVC framework for JSR-168 Portlets
* ... and much, much more

これって設定ファイルが結構変わるのかな?
個人的には三番目がようやくと言った感じ。

JmsTemplate はいろいろ思うように行かなくて
(非同期受信なし、リソースを開放するタイミングが制御できないなど)
結局新たに作成したものを使った。
JndiTemplate があればどうにかなった。

649 名前:デフォルトの名無しさん [2006/01/08(日) 02:38:17 ]
フレームワークの議論ばかりしていて実際にハイレベルな
パフォーマンス&拡張性が要求される現場では役に立たない
方々乙かれさまです。

650 名前:デフォルトの名無しさん mailto:sage [2006/01/08(日) 03:19:20 ]
どこでも役に立たない>>649よりはマシだけどな。

651 名前:デフォルトの名無しさん mailto:sage [2006/01/08(日) 03:40:27 ]
>>635>>637>>649

652 名前:デフォルトの名無しさん mailto:sage [2006/01/10(火) 15:18:00 ]
普通なら釣りなんだろうが現場見てると
本気でそう考えてるオサーンがたくさん居て死にそうになる。

さすがに起動時だけは遅いが、一度起動してしまえば
速度が気になったことはないな。
拡張性については具体的な例を挙げて欲しいな。
どういう要求が出た時にどういう対応をしたのかを。

653 名前:デフォルトの名無しさん [2006/01/11(水) 03:07:47 ]
HibernateDaoSupportを使う場合にQuery#setFirstResults(int)やsetMaxResults(int)を
使うにはどうすればいいかご存じの方はいませんか?
getHibernateTemplate().find* ではQueryオブジェクトを渡せないし。。。
getSession()して自分で処理するしかないかな。
Spring 1.2.6 です。

654 名前:デフォルトの名無しさん mailto:sage [2006/01/11(水) 11:24:00 ]
>>653
HibernateCallback

655 名前:653 mailto:sage [2006/01/11(水) 22:34:55 ]
>>654
return getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session session) {
// クエリ投げて結果を返す
}
}
って感じですね。マニュアルにも載ってました。ポイントありがとう。

656 名前:デフォルトの名無しさん mailto:sage [2006/01/21(土) 20:54:23 ]
ttp://pcweb.mycom.co.jp/news/2006/01/20/346.html
> Drools 2.5 BETA 2において提供されている拡張モジュールはdrools-decisiontables、
> drools-dotnet、drools-examples、drools-groovy、drools-ide、drools-io、drools-java、
> drools-jsr94、drools-python、drools-smf、drools-smftest、drools-spring、
> drools-spring-examples、drools-spring-jdk5。ベースとなる藻ジュースはdrools-base、
> drools-core、drools-core-3.0。

Springにも対応しているらしいルールエンジンだが、なんだかベースが不味そうだ。

657 名前:デフォルトの名無しさん mailto:sage [2006/01/21(土) 21:14:58 ]
>>656
「藻ジュース」(・∀・)イイ



658 名前:デフォルトの名無しさん mailto:sage [2006/01/22(日) 10:27:33 ]
いや飲みたくはない……

659 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 21:26:19 ]
今、新しいアプリ作るんで、まあ流行のSpringと扱い慣れているStrutsでと思っています。
まずはアーキテクチャを決めるために、いろいろサンプルを作ってみてるんですが、質問です。

Struts&Springの連携で、代表的なのは
 1) ActionSupport
 2) DelegatingActionProxy
 3) DelegatingRequestProcessor
の3つだと思うのですが、2) or 3) で決めかねています。

1)はせっかくなんでつまらないのでボツ。
残るはDelegatingActionProxyとDelegatingRequestProcessorですが、
機能的にどちらが良いのか分かりません。
どちらかと言えばActionを継承させてBaseActionを使っていたことが多いのですが、
RequestProcessorの方が上位ですよね。

アプリケーションは到って小規模なんでどちらでも同じだと思いもするのですが、
考慮すべき点や拡張性の点等、ご助言・苦言を頂けないでしょうか。

非常に基本的な質問で恐縮ですが、

660 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 23:34:09 ]
たいくつでつまらない技術が一番強い。

661 名前:659 mailto:sage [2006/01/24(火) 11:18:42 ]
>>660
確かに、ごもっともだと思います。
実はこれまでの開発ではSpringを使う機会もあったのですが、
見易さ、改修性の高さ、開発規模から
ServiceはInterfaceを使わずに実装しました。
(さすがにDAOはiBatis使って分けましたが)

それに比べ、今回は10年前にCで作った参照のみのアプリの更新で
時間的な余裕もあるので遊びたいと思ってます。

APIも読んでみたのですが、XDOCLETを使うか、また宣言で問題があったら、
といった使い分けの程度しか理解できませんでした。
みなさん、どのような使い方されているのでしょうか、教えて頂けるとありがたいっす。

662 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 13:57:58 ]
>659
(1) と (3) は Struts に変更があったら、思い切り引きずられそう。
TilesRequestProcessor が出ようが新規に Action が発明されようが
涼しい顔して DelegatingActionProxy でラップするのみの (2) が好きですね。
(ていうか (2) しか使ったことないですけど。)
その分設定ファイルは煩雑になるわけですが。

自分の分かりやすいと思える方法でやるのが一番かと。
小規模でそれほど寿命も長くないのであれば、(1) も手っ取り早くていいと思いますよ。

XDOCLET は思ったほど便利じゃないと言うか、
開発の間に試行錯誤してると、結局手で書いたほうが速かったでした。
↑これは設計がまずかっただけかも知れません。

663 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 23:17:11 ]
>>662
Actionベースはやはり分かり易いですよね。
人数が多いそれなりの規模なら、間違いなくActionProxyでいくと思います。

いくつかサンプル作ってみたのですが、3種類の感想は

ActionSupport
-確かに楽だけど、Springの楽しさは十分に味わえない気が。
 でも実装はまんまActionなんで、いたって簡単。
 しかもプログラマの質がそれなりなら、自分入れて3人位いれば
 中規模まで行ける気がする。

ActionProxy
-実質これがStruts&Springの標準でしょう。
 至って堅牢なシステムが訳分からん害虫と一緒でもテストファーストで
 スムーズに作れそう。
 しかもこれまでのStrutsの資産も十分に生かせるんじゃないでしょうか。

RequestProcessor
-Controler以前の処理をガチガチにやるのであれば、やはりRequestProcessorだと
 思います。
 が、幾分硬すぎる気が。大人数のRUPには向いているかな。

自分ごときが作るシステムはそれほどクリティカルじゃないし、ユルイと思うのですが、
まあ当たり前、と言った感想でしょうか。

今回はActionProxyからやってみようと思います。
時間もある分、新しい人も多いんで。
また進展したら報告します。 いらんか。

664 名前:デフォルトの名無しさん mailto:sage [2006/01/25(水) 12:22:51 ]
>また進展したら報告します。 いらんか。
最近スレが過疎ってるからチラシの裏でも問題ないかと。

>訳分からん害虫
でかいところが素敵なフレームワーク作ってるかと言うと
そんな仕事にありつけたことが一度もないのは運が悪いんだろうか。

665 名前:659 mailto:sage [2006/01/25(水) 22:18:20 ]
>>664
なかなか難しく厳しい問題です、拡張性・メンテナンス性を含めた機能美で言えば。
確かに誰がやったん?ってひどいのもありますが、現状では仕方ないかとも思っています。

1つはレガシーのためです。
やはり遺物であっても今から見ればあほあほなRDB設計であっても
どうしても引きずらないではいられません。
例えばホストシステムの特定部分をWebに置き換える際、レガシーのデータやインターフェースは
その他のホストのためにつないでやらないといけません。
おかげでせっかくのDAOも、結局は???になってしまいがちです。
これまで私も挑んだのですが砕け散りました。

もう一つは、企業にとってみればシステムが構築されれば後は減価償却の対象でしかありません。
本来3ヶ月かけて作るべきものであっても即興で1.5ヶ月でつくれば評価されてしまいます、
掛けたくないのは人件費な訳ですから。
もちろんこんなシステムの維持のコストは高いです。が、トップの方々には見えてきません。
ユーザーからの機能追加要望があった、といえば、それなりのコストであれば通ってしまいます。
海外拠点との情報連携なんてつけてやれば大喜びです。
(フェーズ毎に見積もりきちんととって開発も難しいのが現状ですから・・・)

と、過疎板でうだつのあがらん社内SEが独り言ってみました。

666 名前:デフォルトの名無しさん mailto:sage [2006/01/25(水) 22:53:35 ]
664ですがマ板向きな話題になりそうなのでこの件はクローズ。
脱線させてごめんなさい。

667 名前:デフォルトの名無しさん mailto:sage [2006/01/29(日) 00:03:48 ]
すいません、Spring.NETの話題もここで良かったりします?



668 名前:デフォルトの名無しさん mailto:sage [2006/01/29(日) 09:45:51 ]
わかんない。
けど、とりあえず書いてみれ

669 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 10:23:30 ]
>>659

>うだつのあがらん社内SE
お前様はオレですかw

疑問に思ったことを二つ。

>見易さ、改修性の高さ、開発規模から
>ServiceはInterfaceを使わずに実装しました。

何故だよ? facadeした方がP層から見たときに理解しやすいし、
実装ロジックを意識しないで済むと思うのだけど。あと例えば
君がAPI定義して、君の手下が実装する、なんて作業も
スムースになると思うのだけど。

あと、その場所にSpringのTransaction制御は適用してるの?
それとも君達でゴリゴリ書いているの?
そこがSpringの一番美味しい所だと思うのだが。



670 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 10:24:23 ]
<連投>

>流行のSpringと扱い慣れているStrutsでと思っています。

扱い慣れているとはいえ、何故に死滅が確定している
現verのStruts? 同じ社内SEの立場として言うが、
それって将来に禍根を残すんじゃないの?
特に、struts-taglibを使うのは忌むべきことじゃないのか?

高度にクリティカルじゃなくてもいいなら、素直にJSFを
採用すりゃいいじゃん。もし、strutsじゃなきゃ人材を
確保できねぇと言うなら、せめて
org.springframework.ui.velocityパッケージの研究を
してから決定した方がいいんじゃないの?



671 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 12:13:28 ]
死滅とかはNG Wordに入れてる人も居るから避けたほうが吉。

JSF はもう少し枯れてからの方が良くない?
今のところ、Velocity でやっちゃうのが一番直感的に思う。

672 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 12:24:21 ]
うちで使ってるアプリケーションサーバーはJSPしか動かねぇ
Servletすら使えない

673 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 15:42:57 ]
釣りには屈しない

674 名前:デフォルトの名無しさん mailto:sage [2006/02/01(水) 09:47:13 ]
おぉ、まだ居る方が。

>>669
ServiceのInterfaceについては、いかに害虫がオブジェクト指向を知らなくても
オブジェクト指向らしいJavaになるか考えてこうなりました。
まずあの方達はクラスを上手く切り出せないんです、最初は。
で、下手にInterfaceやって使いまわしなんて考えると開発中の手入れが
恐ろしいことになり、ある意味好き勝手にやってもらいました。
で、DAOについてはメソッドが明確なんでInterface切ってやってもらってます。
iBatisを使ってるんですが、こいつだとDAOの中のみでTransaction制御できるんで
助かります。
これだと統合テスト中にこっちでクリティカルな部分がすぐいぢれるんで楽なんですよ。

675 名前:659 mailto:sage [2006/02/01(水) 10:14:07 ]
書き忘れですが、674 = 659です。

Strutsについては、JSFでの置換えも検討しましたが、
今回、自分以外はJavaでWebやるの初めてなんですよね。
やはりブラウザからRequestをServletで受けて、というのを実感
し易いのはStrutsかなぁ、と思います。
JSF、VBちっくにドラッグ&ドロップでできてしまうんで、最初からこれだと
裏の理解が薄く後々に生きない気がします。
それと社内SE的にはもう少し枯れてからで良いかなと、正直思います。

Taglibについては、個人的にこれ以上覚えられるかー、ということで
beanとlogicにのみ制限しています。
まあ多少beanを拡張はしていますが。。。

個人的には、Struts → JSFで行きたいなと、Viewについては。


676 名前:669 mailto:sage [2006/02/01(水) 10:53:44 ]
>>659

>DAOの中のみでTransaction制御

これって複雑なことをやろうとすると破綻しないかい?
複数のテーブルを更新するのもDaoのメソッド単位になる、
従って肥大したDaoImplを書かざるを得なくなる、という原因で。

オレのやり方だとこんな感じだ。

<ServiceLayer>
public void deposit(Account account, Money increasedMoney){
  accountDao.update(account);
  revenueDetailDao.insert(account, increasedMoney);
}

で、トランザクションはあくまでserviceLayerに置く。つまり上の
depositメソッドに対してPROPAGATION_REQUIREDを設定する。

オレはさらに、dao層、上の例ではaccountDao.updateと
revenueDetailDao.insertに対しては
PROPAGATION_MANDATORYをかけている。
これによりserviceLayerを通さずにDaoに触ったら即座にアポーン。

君の「DAOの中のみでTransaction制御」だと、上の二つの
メソッドを一つにまとめないと原始性を維持できないのでは?
勘違いだったらスマソ。

677 名前:659 mailto:sage [2006/02/01(水) 12:13:46 ]
>>669
DAO単位で考えれば原始性を維持できない可能性は仰る通り存在します。
でも、実際の使用で考えれば、多少複雑なデータはユーザに紐付いているわけで、
2重ログインを防げば、問題無しという訳です。
美しくないことは、確かですが。

Springでのトランザクション管理は、まだ読んだだけですけど、実装も含めスマートですね。
トランザクション属性なんか、いかにも楽できそうで。
DAOは何を使われてるんですか?
今回はHibernateが親和性も高く、情報も多いんで使おうかと思ってます。



678 名前:669 mailto:sage [2006/02/01(水) 13:12:05 ]
う〜ん、オレにはそれはチョト怖く感じる。

更新が途中で落ちる可能性なんてゴロゴロしてるワケだし。。。
(オレには納得いかんが)落ちる可能性を完全無視するとしても、
その場合は最低でもペシミスティックロックで組まんとイカンと
思うのだけど。。。

頼む、トランザクション管理層をserviceLayerに持ち上げとくれ。
Spring使えばチョチョイのチョイだ。

iBATISは好きだぉ。


679 名前:デフォルトの名無しさん mailto:sage [2006/02/01(水) 16:24:19 ]
>>669
仰ってることが分かってきました。
自分が話しをごっちゃにした予感です、害虫さんと自分の立場を。

害虫さんのトランザクション管理は、はっきり言って、信用してません。
で、問題があった際にDAOとServiceを引っ張って考えるのはしんどいんで
DAOについてはiBatisのAutoCommitにして、自分はServiceに集中できるように
している、という話です。

読み返してみると、確かに訳分からん話してますね、自分。

そういえば、SpringとベストマッチなDAOって何でしょ?
iBatisもいけるようだとネットに載ってた気がしますが、やはりHibernateですかね?
他に面白いのないでしょうか。



680 名前:デフォルトの名無しさん mailto:sage [2006/02/01(水) 20:56:14 ]
HibernateはDBを一から設計するっていうならおすすめ
既存のDBがからむならiBatisの方が無難だとおもう

害虫さんがいてiBatis学習コストが気になるっていうなら
Spring JDBCでもいいんじゃない?


681 名前:デフォルトの名無しさん mailto:sage [2006/02/02(木) 01:17:25 ]
>>675
>Taglibについては、個人的にこれ以上覚えられるかー、ということで
>beanとlogicにのみ制限しています。

Strutsでやるんなら最低限必要なStrutsタグはhtmlタグのみで、後はJSTLで置き換えるのがお勧め
JSTLはJava EE5に含まれることが決定しているし、JSFも1.2からはJSTLと連携出来るようになる

682 名前:デフォルトの名無しさん mailto:sage [2006/02/02(木) 01:36:23 ]
お勧めとかではなく、beanとかlogicを使うべきではない、という感じだな。

683 名前:659 mailto:sage [2006/02/02(木) 10:15:36 ]
>>680
既存DB、IMSもRDBもわんさかあるんで、これまではiBatisだったんですよね。
オブジェクトベースでのDB考えるなら、Hibernateというイメージは確かに強いですよね。
そんな幸せな開発はやったことありませんが。

>>681、682
z/OS中心の製造業社内SE的には、Webのプレゼンテーション層については過渡期に
感じるので、枯れ果てた技術で十分かなと思います。
新しい技術を入れても今後メンテする人が大変なだけですよ、うちのような環境では。

JDKにしても既存のものは1.4.Xが限度で、5にすることなんてありえません。
ぶっちゃけ、手間の割にメリットがあんまり考えられません。
それよりも新しいWASには5を導入する方向で考えると思います。

個人的にはJSFの熟成を期待しつつ、ちょっと複雑になりそうだったらリッチで、
と行ければ良いなぁ。

・・・今はこんなこと考えている自分が、ちょっと嫌。
Javaを始めて勉強してた頃はオブジェクト指向に感動し、新技術マンセーだったのに。
他に居ないのかな、こんな方。






684 名前:デフォルトの名無しさん mailto:sage [2006/02/02(木) 11:17:28 ]
>682
beanを使うべきじゃないとは言っても、
messageはなかなか避けられないような。

685 名前:669 mailto:sage [2006/02/02(木) 11:31:58 ]
おいおい、そんな後ろ向きになるなよ。

新技術に対する感動を忘れたらオレらの仕事はつまらなく
なるばかりだぜ。つーか、今でもspring・iBATIS・hibernateって
やってるんだろーが。何でviewだけそんなに野望を失うのさ?

struts-taglibは、数年後には非推奨API(あるいはそれに準じた
無体な扱いを受ける立場)になるんだぜ? 君は後進に
非推奨APIのメンテをさせる気かい?

JSF怖くないってw つーかあれ便利だぞ。少なくてもstrutsに
比べりゃね。なんつったて同じ作者の二番煎じなんだから。
JSF自体がDI持ってるからSpringとの組み合わせもし易いしね。
練れてなくて意味無い所で苦労を強いられるのは認めるけど。

な〜んて書きながら、オレ自身もJSFマンセーには
なりきれないのだけどね。初期の頃に宣伝されたリッチ
クライアント対応とか全然進んでねぇし。(JDNCは実質
ポシャったみたいね) 早いとこJSPの呪縛から抜け出して
欲しいと思っているのに、なんか全然別の方向に逝こうと
しているみたいだし。。。

愚痴スマソ


686 名前:デフォルトの名無しさん mailto:sage [2006/02/02(木) 11:44:00 ]
JSFも悪くないと思うけどね、まだ出来たてのせいか
ちょっとこなれてない感じ。 EL式とかアレだし。
sunのより高機能なんでmyfaces使っても、バグが結構あって
DataTableとか微妙な挙動をする場合がある。

1.2待ちかな

687 名前:デフォルトの名無しさん mailto:sage [2006/02/02(木) 13:02:24 ]
>>684
messageは使うね。

>>686
2年もたってるのに、出来立てはないとおもう



688 名前:659 mailto:sage [2006/02/03(金) 12:37:57 ]
>>669
Viewも野望だけはあるんですけどね。
ただWebだと、JSFにしても色々あり過ぎて、決め手に欠けます。
それにお偉方の説得材料が足りません。
もう暫くおとなしく待って、淘汰されてから選んで良いかな。

Viewはお偉方にも分かってしまうんで、ここ以外は、好き勝手やれるんだけどねぇ。



689 名前:デフォルトの名無しさん mailto:sage [2006/02/03(金) 13:49:52 ]
正直jsp2.0で十分な気が

690 名前:デフォルトの名無しさん mailto:sage [2006/02/15(水) 15:03:14 ]
Hibernate3初心者ですが、ちょっと教えて下さい。
many-to-one のマップで、もし該当データが存在しなくても怒られない方法、
知りませんか?
例えば

<class name="item">
<id name="id"/>
<many-to-one name="bid"/>
</class>

<class name="bid">
<id name="id"/>
<pro name="amount"/>
</class>

これで
from Item item left join fetch item.bid をやって、
取得したリストを表示させると、bidを取得できなかったitemの
item.bid.amountをgetすると、
LazyInitializ E org.hibernate.LazyInitializationException TRAS0014I: 次の例外がログに記録されました。 org.hibernate.LazyInitializationException: could not initialize proxy - the owning Session was closed
と、アボンです。

session閉じて分離オブジェクトになってんだから、良いじゃん、
と思うんだけど、教えて下され。


691 名前:デフォルトの名無しさん mailto:sage [2006/02/15(水) 15:11:12 ]
>>690
スレ違い
pc8.2ch.net/test/read.cgi/tech/1134701684/


692 名前:690 mailto:sage [2006/02/15(水) 15:56:38 ]
>691
スマソ

693 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 11:35:44 ]
保守、というか1.2.7記念。

694 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 12:03:36 ]
EJB3.0 のどこが DI なのかと思い始める今日この頃。

695 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 12:49:55 ]
つまり、勉強不足?

696 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 23:10:38 ]
@EJBアノテーションによるフィールドインジェクションだが?

697 名前:デフォルトの名無しさん mailto:sage [2006/03/07(火) 23:40:25 ]
まぁ勉強不足なのは確かだが。

結局クライアントコードに依存性を書いてる辺りが、
確かに従来のJavaの文法じゃないけど
アノテーションと言う名前のただの lookup じゃん、とか。

(DIとは関係ないが)@Statefulも
アノテーションと言う名前の implicit な interface になっただけで
同じことをするのに書法のバリエーションが増えただけで
Perl のガラクタ折衷主義を思い出したり。



698 名前:デフォルトの名無しさん mailto:sage [2006/03/08(水) 22:01:48 ]
"アノテーション使ってるからDIじゃない"っていいたいの?

interfaceがメソッドに付けれますか、と。
"ただのlookup"ではないしな。
結局アノテーションどうこうとゴネてるやつって、変化を受け入れれないだけなんだよな。

699 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 01:38:51 ]
クライアント側でリソース名を明示的に書いているから
DIとはいいがたいと思ってます。

>"ただのlookup"ではないしな。
どんな嬉しさがあるか、教えていただけないでしょうか。
煩雑な記述が減る程度しか思いつきません。

>interfaceがメソッドに付けれますか、と。
@Stateful はメソッドに付かないと思うけど。

700 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 03:37:13 ]
>>699
> クライアント側でリソース名を明示的に書いているからDIとはいいがたいと思ってます。

つまり、DIをわかってないと。

701 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 13:01:15 ]
そっか。DIの定義が変わったのか。

702 名前:デフォルトの名無しさん mailto:sage [2006/03/09(木) 22:20:05 ]
>>701
変ってないだろ。
君が勘違いしてるだけ。

703 名前:デフォルトの名無しさん [2006/03/11(土) 15:16:19 ]
2.0になってどう?
近い将来でseasar使うか2.0使うか迷ってるんだが、
Spring側の利点が見つからない・・・

両方つかってみたけど、seasarだとXMLをかなり省けるから
楽なんだが・・・

誰か意見ください。

704 名前:デフォルトの名無しさん mailto:sage [2006/03/13(月) 13:14:45 ]
>702
DIって、クライアント側で明示的にリソース指定した部分が
コンテナが注入するようになって素敵だよって流れだと思ってたんですが。
で、勘違いのない本当の定義とは?

>703
利点が見つからないならSeaser2使えば良いかと。
とりあえずXMLが省けることは多分大した利点にならんよ。

705 名前:デフォルトの名無しさん mailto:sage [2006/03/13(月) 21:56:40 ]
横槍スマソ

>>704
そもそもEJB3のDIは「明示的にリソース指定」はしないぞ

>とりあえずXMLが省けることは多分大した利点にならんよ。
その根拠は?
書かなくて済むのであれば書かないに越したことは無いし
XMLのメンテナンスだって馬鹿にならない

706 名前:デフォルトの名無しさん mailto:sage [2006/03/13(月) 23:15:36 ]
>>704
DIの最低限の定義は、自分でインスタンスをとって来ないで、よそから注入してもらうこと。

@EJBアノテーションつけたとしても、それなりのコンテナ使わない限りなにも影響はない。
そのままSpringやSeasar使えばそれなりに注入される。

707 名前:デフォルトの名無しさん mailto:sage [2006/03/14(火) 10:32:53 ]
DIに関して705氏と706氏の意見で納得。
確かに自分でインスタンスとってきてるわけではないね。
俺はとってくる情報が書かれてることそのものが嫌いなんですが
これはDIとは関係ないってことですね。

>その根拠は?
autowire 使えばそれなりに記述量は減るけれども
曖昧さが増えてかえって混乱を招くだけだった、との経験から。
Seasar2だと違うのかも知れない。
適当なこと言ってごめんなさい。

それにしても盛り上がらないスレですね。なんでだろ。



708 名前:デフォルトの名無しさん mailto:sage [2006/03/14(火) 18:46:23 ]
一部雑誌や新しいもの好きが飛びついてるだけで
現場ではほとんど使われてないから。

709 名前:デフォルトの名無しさん mailto:sage [2006/03/14(火) 19:36:29 ]
はい、飛びつきました

710 名前:デフォルトの名無しさん [2006/03/14(火) 22:14:33 ]
うちでは全部SpringかSeasar使ってるが、世間ではそうなのか?
トランザクションに関してはとても楽だが

711 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 17:34:47 ]
>>707
いったん使い出せば、通常の範囲では質問もなにもないし、特に話題がないからかもね。

712 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 17:52:50 ]
イイナー
うちで使ってるスゲー高いアプリケーションサーバーは
jspしか使えない

713 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 21:47:24 ]
そりゃないんじゃね〜の?

714 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 22:14:35 ]
>>712
BroadVision One-To-One
以前はC++しか使えなかった。マジで。

715 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 22:14:55 ]
713宛てだった

716 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 22:30:54 ]
「Portal,Commerceの価格は1CPUで810万円からとなっております。」
ΣΣ(゚д゚lll)

717 名前:デフォルトの名無しさん mailto:sage [2006/03/16(木) 00:03:31 ]
そういやあ、WebObjectsも昔は750万とかしたよなあ。。。。



718 名前:デフォルトの名無しさん mailto:sage [2006/03/16(木) 00:05:24 ]
製品カタログ見ても何をするものなのかが分からん。

719 名前:デフォルトの名無しさん mailto:sage [2006/03/16(木) 02:13:23 ]
JSPしか動かないTomcatみたいなの
ショボいDBのラッパーとかユーザー管理とかビジネスルールのライブラリとかがいっぱい付いてる
あと やたら高い

720 名前:デフォルトの名無しさん mailto:sage [2006/03/16(木) 03:57:55 ]
うちの会社で出してるゴミコンポーネントも945万円するお。
1年で1個売れれば万々歳だって。

721 名前:デフォルトの名無しさん mailto:sage [2006/03/17(金) 16:09:08 ]
そりゃむしろ、945万もするから売れるんだろう。
金を出す人間は、無料でしっかりしたモノを嫌がって
バカ高くてヘボいモノを好む傾向にあるから。

で、現場は地獄を見る、と。

722 名前:デフォルトの名無しさん mailto:sage [2006/03/17(金) 17:20:41 ]
無料だとちょっと問題が出るとすぐ捨てるけど、
金かけてると捨てるわけにはいかないからなあ

723 名前:http://www.vector.co.jp/soft/win95/util/se072729.html mailto:http://msdn2.microsoft.com/ja-jp/library/h2k70f3s.aspx [2006/03/18(土) 20:26:19 ]
TextSS のWindowsXP(Professional)64bit化おながいします

もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?

724 名前:デフォルトの名無しさん mailto:sage [2006/03/25(土) 12:11:47 ]
なあ、参照しかしないクエリーでもトランザクション切ってる
なんて事ないよな?
サービスのインスタンス化時にトランザクション切るのをデフォルト
にしてるのを見たことあるぞ。。。
同時アクセス数増えたとき、大変な事になるのがわからんのじゃろうか。


725 名前:デフォルトの名無しさん [2006/03/27(月) 10:58:31 ]
AOPでトランザクション管理するなら、
READだけの処理では普通は開かんようにするはず。

726 名前:デフォルトの名無しさん mailto:sage [2006/03/27(月) 14:11:08 ]
>AOPでトランザクション管理するなら
してなかったりして

727 名前:デフォルトの名無しさん mailto:sage [2006/03/27(月) 16:22:43 ]
貼っとく

【BEA】Using the Java Persistence API with Spring 2.0
dev2dev.bea.com/pub/a/2006/03/jpa-spring-medrec.html



728 名前:デフォルトの名無しさん mailto:sage [2006/03/27(月) 19:02:56 ]
>>724
どうして大変な事になるの?

729 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 09:58:12 ]
複数のテーブルを参照してひとつのデータを作るような場合は、
読み込みでもトランザクションきらないとまずいんじゃないの?


730 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 10:11:35 ]
>>729
> 複数のテーブルを参照してひとつのデータを作るような場合は、
JOINではなくて、複数のSELECT発行って事?

731 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 11:05:09 ]
>>730
ISOLATION_LEVELのデフォルトって普通はREAD_COMMITTEDじゃないの?
複数のSELECTまで考えるとISOLATION_LEVELをREPEATABLE_READに変更しないと駄目じゃない?


732 名前:デフォルトの名無しさん [2006/03/28(火) 11:33:17 ]
>>731
InnoDBのデフォルトはREPEATABLE_READみたいだなあ

733 名前:730 mailto:sage [2006/03/28(火) 11:45:37 ]
>>731
>>732
DBベンダによってデフォルトが異なる。んで、大抵はREPEATABLE_READ(らしい)。

結論としては、複数のSELECTを発行するサービスのメソッドは
トランザクション制御しなきゃならんって事か。

734 名前:731 mailto:sage [2006/03/28(火) 11:59:04 ]
>>732
Oracleのデフォルトは文レベルの読み取り一貫性(READ_COMMITTED)だったような...

>>733
>結論としては、複数のSELECTを発行するサービスのメソッドは
>トランザクション制御しなきゃならんって事か。

加えて以下の様に明示的にISOLATIONレベルを指定しないといけないのかな?
<property name="transactionAttributes">
<props>
<prop key="get*">PROPAGATION_REQUIRED, ISOLATION_REPEATABLE_READ, readOnly</prop>
</props>
</property>

735 名前:733(=730) mailto:sage [2006/03/28(火) 12:24:32 ]
>>734
いささか古いが、
www.tomlauren.com/weblog/archives/000019.html
によると、OracleのデフォルトはREAD_COMMITTEDみたいだ。
でも、REPEATABLE_READがNotSupportって事になると、
SERIALIZABLEしかないな。

最新の公式資料キボン。

736 名前:731 mailto:sage [2006/03/28(火) 14:16:43 ]
>>735
Oracleで以下の操作をやると
conn.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);

java.sql.SQLException:
READ_COMMITTEDおよびSERIALIZABLEのみが有効なトランザクション・レベルです。
...
ってエラーが出るよ。

Oracleだと更新処理を伴うトランザクションでトランザクションレベルの読み取り一貫性を
保証したいのであればSERIALIZABLEを指定するしかないのでは?
※更新処理を伴わないのであればreadOnlyだけで大丈夫みたい

でも実際にSERIALIZABLEがどうしても必要になる局面があんまり無いような気も...

で、元の話は

>>724
> なあ、参照しかしないクエリーでもトランザクション切ってる
> なんて事ないよな?

ってことだけどこれって

読み取り一貫性を保証しなくて良い参照のみのトランザクションでAOPで管理せず、AutoCommitも無効にしている場合、
明示的にトランザクションを開始する必要があるのか?

という意味なのかな?


737 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 16:19:46 ]
Strutsを使った場合の、AOPによる宣言的トランザクション管理について意見を聞かせてください。

(前提)
・サービスクラスの各メソッドはAOPによって宣言的トランザクション管理されている。
(処理)
・リクエスト->更新Action->表示Action->JSPとディスパッチする。
・更新Actionと表示ActionはサービスクラスのupdateHoge()やfindHoge()を呼び出す。

これだと、1回のリクエスト中に2つのActionが2回ビジネスロジックを実行するから、
トランザクションも2回発生してしまいますよね?(1操作=2トランザクション)

何となく腑に落ちませんが、これが当たり前なんでしょうか?

それとも、Facadeサービスから更新も検索もまとめて呼ぶべきでしょうか?
更新と検索の引数リストが全く異なる場合はFacadeしたくないんですが…



738 名前:デフォルトの名無しさん mailto:sage [2006/03/28(火) 20:03:23 ]
好きにしろとしか……
個人的には、更新作業の頻度次第で決める

739 名前:デフォルトの名無しさん [2006/03/29(水) 11:26:28 ]
本家よりコピペ

Spring 2.0 Release Party in Stuttgart (organized by JUGS)
Submitted by Juergen Hoeller on Fri, 2006-02-24 18:31. Event
Start: 2006-03-30 14:00
End: 2006-03-30 23:00
Timezone: -14400

いよいよ2.0が間もなく到来だぬ。

ところで2.0の目玉って何なのさ?(恥)

740 名前:デフォルトの名無しさん mailto:sage [2006/03/29(水) 16:35:27 ]
>>738
んじゃ、Action2つにする。

とりあえず、HibernateでOpenSessionInViewしておけばAction2つでも
1トランザクションになるよね?

741 名前:デフォルトの名無しさん mailto:sage [2006/03/31(金) 23:11:17 ]
>>740
トランザクションとHibernateのセッションの区別はついてますか?


742 名前:デフォルトの名無しさん mailto:sage [2006/03/32(土) 00:26:43 ]
これ、掻い摘んでいうと何?

743 名前:デフォルトの名無しさん mailto:sage [2006/03/32(土) 01:38:39 ]
軽量コンテナ

744 名前:デフォルトの名無しさん mailto:sage [2006/03/32(土) 05:59:35 ]
>>742
「Java2EEなんかクソくらえ」

745 名前:デフォルトの名無しさん [2006/03/32(土) 06:03:37 ]
今日は32日だ。うそをついていい日ではない。

746 名前:デフォルトの名無しさん mailto:sage [2006/03/32(土) 10:39:20 ]
www.2ch.net/
*エイプリルフール中止のお知らせ*
本年度、ITバブル崩壊の余波、またライブドア事件の混迷、楽天ゴールデンイーグルスぶっちぎり最下位など、
悪条件の重なりによる株価低迷が2ちゃんねる運営費にも多大なる影響を与え、
火の車である今の財務状況を鑑みるに、エイプリルフールの全面中止もやむなしという判断にあいなりました。
ご期待されていた皆様には大変申し訳ありませんが、どうぞよろしくご理解いただければ幸いです。
また、妄言民族と呼ばれ、近隣アジア諸国に多大なる苦痛を与えている日本国民としてこれを良い機会と考え、
例えエイプリルフールだとしても嘘を無くし、世界平和に貢献できる公明正大な言論の場を標榜すべく襟を正しつつ、
2ちゃんねるはエイプリルフールの根絶に今後とも邁進していく所存でございます。


747 名前:724 mailto:sage [2006/04/02(日) 12:30:05 ]
>読み取り一貫性を保証しなくて良い参照のみのトランザクションでAOPで管理せず、
>AutoCommitも無効にしている場合、明示的にトランザクションを開始する必要があるのか?
そうじゃ。RDBにもよるが、読み取り一貫性を実現するために、大体がテンポラリ領域に
データをコピーしている(OracleとSQL Serverは少なくともそう)。
この事から、一覧など頻繁に閲覧されてデータ量が多い場合、直ぐエラーになっちまう。
(同時アクセスが多いと、Tempがクリアされる前に次が来ちゃうからじゃ)
このエラーを受けてDB屋にTemp領域増やせっていうのはナンセンス。
もちろん、ビジネスロジック上大きなTempが必要な場合もあるからそれは、
ちゃんと見積もりをDB屋に伝えればいい。大きくするのに否定的な訳じゃなく
PGの手抜きに対して文句を言ってるんじゃ。

また、上記の事だけじゃないが、上記だけからでも結構コスト(負荷)
が掛かることは言うまでもないよな。



748 名前:デフォルトの名無しさん mailto:sage [2006/04/02(日) 13:10:03 ]
>>747
> そうじゃ。RDBにもよるが、読み取り一貫性を実現するために、大体がテンポラリ領域に
> データをコピーしている(OracleとSQL Serverは少なくともそう)。

オラクルは違うだろ。
データがコピーされるのは読み取り時じゃなくて更新時。
コピー先はテンポラリじゃなくてUNDO表領域。

> この事から、一覧など頻繁に閲覧されてデータ量が多い場合、直ぐエラーになっちまう。

頻繁に閲覧されてもそれだけじゃエラーにならない。
頻繁に更新されている時にのんびり読んでるとORA-01555
本当に理解して書いてるか?

749 名前:デフォルトの名無しさん mailto:sage [2006/04/02(日) 15:04:58 ]
> > この事から、一覧など頻繁に閲覧されてデータ量が多い場合、直ぐエラーになっちまう。
>
> 頻繁に閲覧されてもそれだけじゃエラーにならない。
> 頻繁に更新されている時にのんびり読んでるとORA-01555
> 本当に理解して書いてるか?

激しく同意。
付け加えるなら、Oracleではトランザクションの有無にかかわらず
文レベルの一貫性は常に保証しようとするから、
> 頻繁に更新されている時にのんびり読んでるとORA-01555
という状況はトランザクションの有無にかかわらず起こりうる。

だから、>747の主張は少なくともOracleには当てはまらない。

750 名前:740 mailto:sage [2006/04/02(日) 18:58:45 ]
>>741
スマソ&サンクス
考えてみれば、サービス層でAOPトランザクション管理していると、
複数Actionが複数サービス呼び出す時点で複数トランザクションになる…
んでOpenSesseionInViewしてもHibernateのSessionが1つに保たれるだけですな。

結論すると、2Actionだと2トランザクションでいくしかないのか。

751 名前:731 mailto:sage [2006/04/03(月) 14:34:04 ]
あんまりSpringと関係が無くなって来たような気が...

>>747
>>748
>>749
読み取り一貫性に関しての詳細は置いておいて元の話だとOracleでは
以下になるんじゃないかな?

必要な読み取り一貫性が文をまたがるのであれば読み取り専用の
トランザクションを明示的に開始する必要がある。

必要な読み取り一貫性が文レベルでよいのであれば明示的にトランザクションを
開始しなくても良い(コネクションを生成した際のトランザクションがずっと使われている)
但し、更新処理の前にはCommitを発行して明示的にトランザクションを開始する必要がある

どちらにしてもOracleで更新やロックを伴わないトランザクションでCommitを行っても
無視される(v$sesstatのuser_commitは増えない)のでパフォーマンスには大した影響を与えない

結局のところ空コミット(参照のみトランザクションでのコミット)のコストの話なのかな?


752 名前:740 mailto:sage [2006/04/07(金) 20:14:03 ]
今さらだが、ようやくStruts+Spring+Hibernate
(DelegatingActionProxy、
StandardXAPoolDataSource、
JOTM、
OpenSessionInViewFilter、
JtaTransactionManager)
のアプリが作れたよ…

さて、次はSeasarも試してみるか…

753 名前:デフォルトの名無しさん [2006/04/07(金) 23:51:41 ]
Hibernateって使える?

754 名前:デフォルトの名無しさん mailto:sage [2006/04/08(土) 06:37:50 ]
Java標準になったくらい使える。

755 名前:デフォルトの名無しさん mailto:sage [2006/04/08(土) 13:40:24 ]
DB設計がしっかりしているならHibernate
DB設計が腐っているならiBATIS
どっちも便利であるのは間違いない。
適材適所で。

756 名前:デフォルトの名無しさん [2006/04/27(木) 06:56:47 ]
spring 使いたい。しかしEJBコンテナを捨てるには問題が。
リモート呼び出しやORM(hibernateで)は置き換えることが
できたけど、EJBのMessage Driven Beanを代替するものが
見つからない。MDB便利すぎる。

757 名前:デフォルトの名無しさん mailto:sage [2006/04/28(金) 01:17:20 ]
Struts+Springで
SpringのViewクラスを使用したい場合は
どうすれば良い?




758 名前:デフォルトの名無しさん mailto:sage [2006/04/28(金) 21:03:44 ]
それってStruts使う意味あんの?

759 名前:デフォルトの名無しさん mailto:sage [2006/04/29(土) 20:34:44 ]
>>757
既存システムとしてStrutsの部品があって
ExcelとかPDFを出力したいので
SpringのViewを使用する

760 名前:デフォルトの名無しさん mailto:sage [2006/04/29(土) 20:36:33 ]
つ POI

761 名前:デフォルトの名無しさん mailto:sage [2006/05/08(月) 16:21:07 ]
Struts(SpringのStrutsインテグレーション機能)とSpringMVCって同時に動作できないの?
web.xmlとXXX-servlet.xmlを調整すれば、実現できそうだけど?

762 名前:デフォルトの名無しさん mailto:sage [2006/05/09(火) 09:52:00 ]
1.2.8記念

って何なのこれ?

763 名前:デフォルトの名無しさん mailto:sage [2006/05/10(水) 18:31:22 ]
1.2.8 についてか、Spring についてか。>何なの

764 名前:デフォルトの名無しさん mailto:sage [2006/05/11(木) 00:10:50 ]
クラス属性に対応するbean定義の<property name>の値って、何でもいいんだな。
setterの名前さえ整合性が取れていれば。

765 名前:デフォルトの名無しさん [2006/05/19(金) 09:53:31 ]
貼っとく

Rodが語った2.0@JavaOne

https://www28.cplan.com/cb_export/PS_TS-3744_277744_124-1_FIN_v2.pdf

user:contentbuilder
pass:doc789


766 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 14:31:03 ]
>765
thx.

Message-Driven POJO なんて構想もあったのか。初めて知った。

Extensible XML Confinguration は
俺様設定が乱立しそうでちと怖いな。

767 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 14:32:45 ]
>>761
そりゃできるだろ。




768 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 16:50:26 ]
では757は解決だな

769 名前:デフォルトの名無しさん [2006/05/20(土) 00:21:20 ]
ソースコード上でAppicationContextを利用してBeanを取得するしかない
場合、どうしてます?
いい方法を考えているうちにgetBean("BeanId")のコードがいっぱいできた
まんまプロジェクト終盤にきてしまった。。。

770 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 00:56:56 ]
そんなに気にしなくていいと思うけど、
getBeanId()のメソッドを用意して静的にアクセスできるようにはしてる。


771 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 00:59:34 ]
もちろんID取得もSpringで管理するんだよな?


772 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 01:01:22 ]
そもそも、自分でgetBeanしなくていいように作ります。
StrutsならDelegatingActionProxy使えばいいし
TapestryもSpringと連携させてコンポーネントにInjectしてもらえるし。

773 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 06:12:45 ]
それができない場合はルックアップするしかない。
どこからでもルックアップできてしまうので収集がつかなくなるおそれはあるけど、
>>770 のように bean の種類ごとにルックアップするメソッドを用意しておけば
いく分見通しもよくなると思われ。

774 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 08:56:55 ]
それただのサービスロケータになってる
別にいいけど

775 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 12:58:25 ]
サービスロケータだと何がダメなの?

776 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 13:05:37 ]
DI自体がサービスロケータ

777 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 15:56:24 ]
>>775
サービスロケータに依存してしまうからですよ。



778 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 15:59:55 ]
ただ、サービスロケータはコンパイルエラーでミスを検地できるので
単純にどっちが上とかはいえない

ってDIってネーミングつけた人いってなかったっけ?

779 名前:775 mailto:sage [2006/05/20(土) 16:13:32 ]
>>777
なるほどー。ありがとうございます。
となるとそれくらいの依存は気にならないなー。
元レスは注入できない場合の話だし

780 名前:769 mailto:sage [2006/05/20(土) 16:55:15 ]
かといって他の解決方法もないのですよね。たぶん。
ドメインモデルとは相性が悪いのでしょうか。やはり。
いまさら設計をトランザクションスクリプトにできないし。。。
まっ宣言的トランザクションだけでもかなり有効であることには
変わりないわけだし。

781 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 22:52:38 ]
>ソースコード上でAppicationContextを利用してBeanを取得するしかない
場合

ってどういう場合なんだろう?
素朴な疑問。

782 名前:デフォルトの名無しさん mailto:sage [2006/05/21(日) 03:47:30 ]
私が使っているフレームワークにはイベントリスナを登録しておくと
コールバックしてくれるという機能があるけど
イベントリスナには依存性注入のチャンスがないのでApplicationContextを使う。

783 名前:デフォルトの名無しさん mailto:sage [2006/05/21(日) 07:33:25 ]
>>782
ここで解説されているみたいなことをやるべし
www-128.ibm.com/developerworks/edu/j-dw-java-springswing-i.html


784 名前:782 mailto:sage [2006/05/22(月) 00:01:56 ]
>>783
自分でインスタンスを生成する必要がある場合の話です。



785 名前:769 mailto:sage [2006/05/22(月) 15:49:50 ]
getBeanを利用する主な場面とは。。。
たとえば親子関係をなすドメイン(請求書と請求明細)などは
ロジック上で画面の内容をドメインに変換する必要があるのですが
明細クラスのような1クラスで複数インスタンス必要になる場合は
betBeanで必要数分インスタンスを生成する必要がある。
みたいな場面です。

786 名前:デフォルトの名無しさん mailto:sage [2006/05/22(月) 16:54:00 ]
>>785
内部でインスタンスを生成する必要があるロジックの場合は、
そのインスタンスを生成するFactoryクラスをインジェクトする
ってのをよくやる。

787 名前:デフォルトの名無しさん mailto:sage [2006/05/23(火) 22:20:49 ]
てかドメインモデルとはめちゃ相性悪い。
アナパタ時代の設計にDI使おうとすると死ねる



788 名前:デフォルトの名無しさん mailto:sage [2006/05/24(水) 11:41:00 ]
よくわからんが、
higaタソが提唱しているシンドメインモデルならドメインロジックだけDIにして、ドメインモデル(データ)
だけ通常の手段(new)で生成すればよいのでは?
ttp://d.hatena.ne.jp/higayasuo/searchdiary?of=5&word=%2a%5bgoya%5d

789 名前:デフォルトの名無しさん mailto:sage [2006/05/24(水) 13:07:20 ]
▽どっちが速いSeasar2 VS Spring
cm.thinkit.co.jp/?4_23934_12965_1

790 名前:デフォルトの名無しさん mailto:sage [2006/05/24(水) 14:00:57 ]
>>788
オレもそうしてる。ドメインのPOJOは自分でnewする方がOOしてる気分になるね。
DIに生成させるのはServiceLayer〜DataStoreLayerのドメイン『操作』クラス達だぬ。

>>789
キャハキャハ。なんかヒガタソ最近人格が変わった? JavaOneでイジメでもくらったのかな。

PowerdBySpringのフレームワークがこんなにポコポコ誕生している現状を見れば、
1.2.xとスピード競争やった所で焼け石に水ダヌ。
AspectJが推奨スタイルになる2.0のこと知らぬ訳ではないだろうにね。

別にRodファンではないけどさ。

791 名前:デフォルトの名無しさん mailto:sage [2006/05/24(水) 15:39:44 ]
785が考えるケースで getBean() することはない。
データは普通に new したらいい。
なんで getBean() しようとしたのか教えてくれ。
メリットが何一つ思い浮かばない。

792 名前:788 mailto:sage [2006/05/24(水) 17:02:50 ]
>データは普通に new したらいい。
激しく同意。

ビジネスロジック周りでDIしたいと思うなら、
ドメインビジネスとしてクラスを切り分ければいいのでは?と思った次第。

793 名前:769 mailto:sage [2006/05/24(水) 22:06:40 ]
>シンドメインモデル

>ドメインビジネスとしてクラスを切り分ければ。。。

ということは、私の思うトランザクションスクリプト + DAOという
組み合わせがDIでは有効という考えと同意と考えられます。
そちらのほうが合っているという結論ですよね。結局は。
DIを利用する上では状態をもつドメインはミスマッチであるということですね。


794 名前:769 mailto:sage [2006/05/24(水) 22:24:03 ]
>なんで getBean() しようとしたのか教えてくれ。
>メリットが何一つ思い浮かばない。

785であげた例も悪かったですが。。。
1.getBeanするドメインが他のドメインを持っている。
オブジェクトグラフの一気取りが可能(Factory作ればすむという話もあるが)
2.やはりInterfaceを実装する実クラスをコードに書かなくてよい
この2つはかなりのメリットです。

もちろん前提がドメインロジックとデータの分離であれば、データに対して
getBeanするメリットが何もないというのは理解できますが。

DIを利用する上では状態をもつドメインはミスマッチである
けれども
上記の理由があるためドメインモデルでもDIを採用しました。
けれども
getBeanする部分をもっといいやり方はないですかねーという質問でした。

795 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 01:09:09 ]
Hibernate等のORマッパでドメインモデルを取得すれば、
one-to-manyなんかの関係は勝手に構築してくれる。
1の芋づる式にとりたいというだけでgetBeanするのはDIの役割とは違う希ガス。
(もしかして、DAOが生成するデータが≠ドメインモデルな設計?)

>2.やはりInterfaceを実装する実クラスをコードに書かなくてよい
はちょっと意味が理解できん。スマソ。解説キボン。

>DIを利用する上では状態をもつドメインはミスマッチである

>上記の理由があるためドメインモデルでもDIを採用しました。
は納得できないなぁ。
そう考えた理由は?

あと、ビジネスロジックを切り出しただけでトランザクションスクリプトって呼ぶの?
SQLで記述するのか、呼び出し側の言語で記述するのか、が
ドメインモデルとトランザクションスクリプトの最大の相違だと思ってた。
ttp://capsctrl.que.jp/kdmsnr/wiki/bliki/?DomainLogicAndSQL

796 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 01:14:00 ]
うーん、ドメインモデルとかDIとかいろいろいじった結果一時DIに傾倒したが....

結局ところ、ドメインモデルのサポートとしてDIを使うくらいにしておきたいと
思った。
もしどうしてもどっちかを取らなくちゃいけなくなったら、サービス層を内製しても
ステートフルなドメインモデルを選択したい。Hibernateとか使うと、リッチなJava
オブジェクトをそのままDBにマッピングできたりするし。

それに、そっちのほうがオブジェクト指向っぽい感じがするから。

797 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 15:57:44 ]
精読したが
> 上記の理由があるためドメインモデルでもDIを採用しました。
の結論に至った理由が理解できなかった。

実際何を getBean() したのかが分からない。
getBean(リテラル文字) まくりな状況より
new した方が可読性高いし変なキャストもせずに済む。
設定ファイルで singleton="false" を書き忘れる心配もない。
どうしても生成部分を隠したいなら、
簡単な Factory を作って、そいつを DI でセットしたらいい。



798 名前:デフォルトの名無しさん [2006/06/29(木) 07:36:24 ]
RC2あげ

799 名前:デフォルトの名無しさん mailto:sage [2006/07/04(火) 09:35:38 ]
過疎スレ保全

つか、2.0期待sage

800 名前:デフォルトの名無しさん [2006/07/04(火) 20:58:53 ]
時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)
よろしくおねがいします
i−want−to−study−java@hotmail.co.jp
(アドレスは全角で書いてあるので半角に直してください)

801 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 03:49:26 ]
コンビニのバイトより安いですが、よろしくお願いします。

802 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 16:53:11 ]
おひおひ、1,000\/h っていくら何でも安すぎだよ。
それじゃ労働しようとする意欲湧かねぇな。

君が♀なら別。

803 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 17:12:10 ]
javaを教えると一言に言っても色々あるしな

804 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 19:13:48 ]
Springと関係ないな

805 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 19:33:12 ]
>>804
つーかスレタイにJavaが含まれているスレに無差別絨毯爆撃しているだけだから無視するのがよろしいかと

806 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 22:35:28 ]
しかし以外にたくさんあるんだな。
>つーかスレタイにJavaが含まれているスレ
ブックマークしていながら、今回のマルチが出るまで気づかなかった。

807 名前:デフォルトの名無しさん mailto:sage [2006/07/07(金) 15:39:40 ]
Spring WS のドキュメントが結構揃ってきたすね。
前は XML-Object Mapping の章しかなかったのに。
そろそろまじめに調べ始めるかな。



808 名前:800 [2006/07/17(月) 21:33:22 ]
教える対象は超初心者です。

専門学校などでJavaを勉強されていて夏休みだけ教えたいという方も歓迎です

809 名前:デフォルトの名無しさん mailto:sage [2006/07/18(火) 12:06:26 ]
javaの前に常識って物を勉強したほうが良いと思います^^;

810 名前:800 mailto:sage [2006/07/18(火) 12:49:11 ]
常識も教えていただければと思います。

811 名前:デフォルトの名無しさん mailto:sage [2006/07/18(火) 14:19:48 ]
ここで聞いても学べません

812 名前:デフォルトの名無しさん [2006/07/20(木) 22:25:56 ]
もはや完全にSeasarに押されてるな。

813 名前:デフォルトの名無しさん mailto:sage [2006/07/21(金) 00:57:25 ]
>>812
獄長乙

814 名前:デフォルトの名無しさん mailto:sage [2006/07/21(金) 23:57:04 ]
WebMVCのSimpleFormControllerで、
フォームのパラメータ名とCommandのフィールド名を
任意にマッピング(バインド)する方法がわからない…

815 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 17:54:58 ]
spring:bind使ってないの?

816 名前:デフォルトの名無しさん mailto:sage [2006/07/26(水) 12:31:58 ]
Java World 2006/09 特集

2.0 とか関係なしに
・EJB3.0 に懐疑的
・ORM は最終的に JDBC に回帰する
な姿勢が良かった。

あと Acegi の記事が後で役に立ちそう。

817 名前:デフォルトの名無しさん mailto:sage [2006/08/01(火) 13:18:00 ]
漏れJavaWorld斜め読みした所。詳しくはこれから読む。

豆蔵が書いたのねコレ。漏れは以前、長谷川ダンナの話を
聞いたことがあるのだが、

「Hibernateは確かに優れたプロダクトだが万能じゃない。
 陥りやすい穴もあるから慎重に検討してから導入した方がいい。」

って言ってた。禿同だったんだけどね。今回の記事もその思想が
根底に流れているみたいだね。

JPAマンセーな流れの中でこういう視点は貴重だと思う。



818 名前:デフォルトの名無しさん [2006/08/09(水) 01:22:18 ]
Servlet依存のコード(JSFバッキングBeanも含む)とサービスメソッド
のデータ受け渡しってPOJOでもDTO使った方がいいのかな?
直にビジネスオブジェクト受け取った方がコーディングが楽なんだが・・・

819 名前:デフォルトの名無しさん mailto:sage [2006/08/10(木) 09:35:55 ]
>>818

www.atmarkit.co.jp/fjava/kaisetsu/j2eewatch02/j2eewatch02.html
から抜粋

このように、POJOをそのままEntity Beanとして扱うことができれば、従来のEJB開発で
Web層とのデータ交換に利用されてきたDTO(Data Transfer Object)パターンはもはや
不要となる(実のところ、J2EEパターンの多くはEJBの使いにくさを緩和するために
生み出されたアンチパターンであるという見方もある)。


820 名前:デフォルトの名無しさん mailto:sage [2006/08/15(火) 22:23:19 ]
うーん、結局、「Web層」って、BCE でいうと、どこになるんだろか。
「Web層」がBだけの役割であれば、M に B を依存させないために、
DTO(のようなもの)は必要のような気がする。

表示で使うPOJOを直接永続化するということは、
逆に永続化の都合に(N:N関係は扱えないとか)、
表示部のロジックが依存してしまう、ということになるんじゃないの?

821 名前:デフォルトの名無しさん [2006/08/16(水) 10:13:12 ]
この本の書評たのむ。

www.amazon.co.jp/gp/product/4797334223/

特にオレが知りたいのは、

・2.0を紹介してるか。

・JPAを使ったWebApp例で、マンセー記事ばかりではなく
 注意点やアンチパターン的な解説もしているのか。

・SpringWebServiceの解説あるのか。

・SpringRichClientとかAcegi(SpringSecurity)の解説あるのか。

でも、読んだ印象でも何でもいいから知りたい。

822 名前:デフォルトの名無しさん mailto:sage [2006/08/17(木) 11:01:55 ]
>820
> 表示で使うPOJOを直接永続化するということは、
> 逆に永続化の都合に(N:N関係は扱えないとか)、
> 表示部のロジックが依存してしまう、ということになるんじゃないの?
シンプルなアプリなら問題ないと思うんだが。
ただ、発想としては「永続化するPOJOを直接表示する」が正しいかと。

どうしても気になるなら、
サービス層で永続化用DTOからプレゼン用DTOへ変換してやれば良いと思う。(higaタソのシンドメインモデルってやつね)
問題は、プレゼン用DTO・変換ロジックを実装するコストに対して価値があるかどうか。では?

823 名前:822 mailto:sage [2006/08/17(木) 17:21:40 ]
間違い。
× シンドメインモデルってやつね
○ Dxoってやつね

あと
ttp://capsctrl.que.jp/kdmsnr/wiki/bliki/?LocalDTO

824 名前:デフォルトの名無しさん [2006/08/22(火) 09:50:14 ]
貼っとく

【IBM】Introduction to Spring 2 and JPA
https://www6.software.ibm.com/developerworks/education/j-spring2/


825 名前:デフォルトの名無しさん mailto:sage [2006/08/25(金) 23:20:47 ]
tp://www.sssg.org/jp-springframework/?FAQ
Seasarの連中もキモイけどこれもイタイ。

826 名前:デフォルトの名無しさん [2006/08/25(金) 23:23:36 ]
>>824
ログインパスワード教えて

827 名前:デフォルトの名無しさん [2006/08/26(土) 09:06:37 ]
>>825
ゆるされるはんいじゃない?



828 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 10:29:20 ]
回答がおもろい。

829 名前:デフォルトの名無しさん mailto:sage [2006/08/26(土) 23:38:21 ]
仲間由紀恵でなく蛯原友里にすべき

830 名前:デフォルトの名無しさん mailto:sage [2006/08/27(日) 23:31:05 ]
>>829
仲間由紀恵は沖縄出身

831 名前:824 mailto:sage [2006/08/28(月) 09:30:04 ]
>>826

ごめんごめん、先に米IBMの会員登録してくれ。
無料&誰でもOKね。

https://www.ibm.com/account/profile/us?page=reg


832 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 12:16:59 ]
抜粋くらいないとわざわざ会員登録してまで見ようとは思わない。

833 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 12:43:34 ]
ここでそんな文句言われても…

834 名前:824 mailto:sage [2006/08/28(月) 18:21:41 ]
序文

Java server applications need not be difficult and tedious to create.
Now in its second generation, the lightweight Spring framework adds a large suite of features
that make it simple for even new server application developers to use.
One key enhancement is Spring 2's integration with the Java Persistence API (JPA),
a cornerstone of the Enterprise JavaBeans (EJB) 3.0 specification. In this tutorial,
learn how to create server applications from scratch using the Spring 2 framework.


835 名前:824 mailto:sage [2006/08/28(月) 18:26:13 ]
その次

Before you start

For almost a decade, the "proper" way to build a robust and
maintainable server-side Java application has been the exclusive domain
of the Java 2 Enterprise Edition (J2EE) platform.

J2EE applications are built using Enterprise JavaBeans (EJB) technology
and run on servers that facilitate deployment and provide rich container services
(such as the management of database connections and pooling).

These servers also add value by providing deploy-time declarative control of
important features such as security and transactions. Although versatile,
the J2EE development process involves many tedious and repetitive tasks
and the creation and maintenance of large numbers of source code files.

Many lightweight Java frameworks claim to simplify server application development,
but none matches the Spring framework in maturity and popularity (see Resources).
Now in version 2, Spring was designed from day one to simplify the server application
building process.



836 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 18:26:48 ]
その次

Instead of approaching development from an all-in-one container perspective,
Spring aims to provide just enough support for an application's requirements
without the burden of a full-fledged container environment. Spring eliminates code bloat:
you can code and test business objects completely outside of any container,
letting your business-object code remain simple, testable, maintainable, and reusable.

With the arrival of Java EE 5 and EJB 3.0, the J2EE community is poised to meet
the Spring developer community. EJB 3.0 supports the notion of lightweight POJOs
(Plain Old Java Objects) as EJB components and introduces the Java Persistence API (JPA),
a persistence mechanism that can run externally to the container.

This persistence mechanism automates the movement of information between business objects
and external relational databases.

Version 2 of the Spring framework has continued its evolution and also leverages JPA
as a persistence mechanism.

In this tutorial, you will work with Spring 2 and JPA persistence.
You'll create a server application using the Spring 2 framework, complete with access
to a DB2 Express-C database. The Eclipse IDE facilitates the development of the Java application
and enhances your exploration of the Spring 2 framework.

これ以上は面倒見ない。

837 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 10:38:46 ]
いつの間にやら SpringLDAP っちゅーSubProjectができてるね。

これってAcegiと被ってないんだろうか・・・?
どうやって棲み分けしようとしているのか、理解している人いたら教えて。




838 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 17:36:04 ]
acegi とはレイヤーが違う。
LDAP ってセキュリティとはあまり関係ないのでは。
一種のDBを操作するプロトコル(書きより読みに重点)
程度のもんだと思う。

839 名前:デフォルトの名無しさん mailto:sage [2006/08/30(水) 08:04:35 ]
>>821
Acegi使ったサンプルは載ってた。

840 名前:デフォルトの名無しさん mailto:sage [2006/08/31(木) 10:13:57 ]
Eclipse RCPとSpringによる実用的なシッククライアントの構築
ttp://codezine.jp/a/article.aspx?aid=528

841 名前:デフォルトの名無しさん mailto:sage [2006/08/31(木) 11:59:47 ]
>>799
> 過疎スレ保全
> つか、2.0期待sage


Web2.0に期待揚げ

842 名前:デフォルトの名無しさん mailto:sage [2006/08/31(木) 15:09:25 ]
マーケティング用語なんてどうでもいい

843 名前:デフォルトの名無しさん mailto:sage [2006/08/31(木) 15:12:01 ]
「Web2.0」を使いたがるのは40代以上

844 名前:デフォルトの名無しさん mailto:sage [2006/08/31(木) 17:58:42 ]

>>838

説明thx、acegi に AuthXxxLdapImpl みたいなのがあるので
混乱していたのですが、確かに違うレイヤの話ですね。

(基本的に「業務アプリ屋」なもので、LDAPの本質とか
頭脳から抜け落ちていました)

>>839

情報アリガト、今度その辺を試そうと思っているので購入
してみることにします。

>>840

お、これイイ。今度の仕事、このパターンになりそうなんです。
(EclipseRCPじゃなくてSwingになりそうだけど)
丁度都合よく記事が出てラッキー!!

845 名前:デフォルトの名無しさん mailto:sage [2006/09/06(水) 23:21:30 ]
>>844
Swingを選ぶあたり、保守性を考慮してあっていいね
SE5.0から速度が向上してるよ

846 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 01:34:24 ]
データベースのフロントエンドで、Eclipse RCP使ってもメリットないし。

847 名前:デフォルトの名無しさん [2006/09/07(木) 15:27:08 ]
ここでCGLIB聞いちゃいますが、

最も単純な、あるクラスの全メソッド呼び出しをインターセプトする場合、
Enhancer使って、MethodInterceptorをCallbackさせます。
この時CGLIBは一体どうやって実現してるか分かる方いますか?
CGLIBは、対象のクラスは弄らず、サブクラス化してるらしいが、
そのサブクラスにはどういう仕掛けをしてメソッドインターセプトする
でしょうか。





848 名前:デフォルトの名無しさん mailto:sage [2006/09/10(日) 21:58:06 ]
www.google.co.jp/search?q=%E5%A5%B3%E9%99%B0%E3%83%9D%E3%82%A4%E3%83%B3%E3%83%88

849 名前:デフォルトの名無しさん [2006/09/11(月) 01:01:18 ]
OpenSessionInViewInterceptorを定義して、それをSpringMVCで使うときは
bean定義でSimpleUrlHandlerMappingのinterceptorsにていぎするのまではいいのですが。
トランザクションのコミットとロールバック条件などはどのように設定するものなんでしょうか。

850 名前:デフォルトの名無しさん [2006/09/12(火) 01:32:58 ]
Seasar2使え

851 名前:デフォルトの名無しさん [2006/09/20(水) 09:59:17 ]
>>849
ぐぐれ

852 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 00:22:03 ]
カウントダウンキタ━━━━(゚∀゚)━━━━!!!!

ってEclipseのパクリかよw

853 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 21:48:32 ]
この道はいつか来た道

854 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 22:11:27 ]
ああ そうだよ

855 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 21:57:09 ]
その下の The Spring Rich Client Project ってのも木になる。


856 名前:デフォルトの名無しさん [2006/10/02(月) 18:46:19 ]
質問です。

以下の場合、スレッドセーフになりますか??

・SpringとStrutsの連携で「DelegatingActionProxy」を使用
・Service層のオブジェクトをSetterインジェクションしてインスタンス変数に保持
 ※Service層のオブジェクトはスレッドセーフを意識していない


StrutsはスレッドセーフにするにはActionでインスタンス変数を使用しないとなると
↑の場合、スレッドセーフにならないような気がします。


もし、スレッドセーフにならないとして、synchronizedする以外でいい方法が
あれば教えてください。

やっぱ、ActionSupport使うしかないんですかね??


857 名前:デフォルトの名無しさん mailto:sage [2006/10/02(月) 20:18:36 ]
>スレッドセーフになりますか?
ここで言う setter injection てのは
定義ファイルに書いといてコンテナにDIしてもらう事?

Action も Service も singleton="false" にすれば
スレッドセーフを考えなくてもOK。(コストは最悪。)

>ActionSupport使うしかないんですかね?
ActionSupport も Action に違いないので
インスタンス変数持たせたら大変。

インスタンス変数を ThreadLoacal で保持させる方法も考えられるけど、
サーブレットコンテナが Action のインスタンスを使い回したりするから、
execute 抜ける前に、確実に変数クリアする等の注意が必要。

結局、いろいろやるより、Service 層をスレッドセーフにした方が楽。



858 名前:デフォルトの名無しさん [2006/10/03(火) 10:02:49 ]
>>857
コンテナに DI してもらうという意味です。
言葉足らずでした...

確かに ActionSupport も Action を extends してるから
DelegatingActionProxy だろうが一緒ですね

Service 層をスレッドセーフな構造になるように考えてみます。


859 名前:デフォルトの名無しさん mailto:age [2006/10/04(水) 00:10:57 ]
Spring 2.0 リリース記念age

860 名前:デフォルトの名無しさん [2006/10/05(木) 09:43:31 ]
豆の人たちあたりが早く解説記事書いてくれんかな。




読んでたら宜しく>豆

861 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 01:13:54 ]
Spring-Annotation v1.0 キタ━━━━(゚∀゚)━━━━!!

やってみたー。動かなかったー。


orz


862 名前:デフォルトの名無しさん [2006/10/31(火) 20:38:16 ]
↓の記事だけどさ、動かなかったんだよね。
ttp://journal.mycom.co.jp/articles/2006/10/26/annotation/

そんでさ、インスタンスをサ、createBeanで作ってやったワケよ。
とりあえずサ、動くこと確認してから記事にしろと言いたいわけ。
ソースまで追っかけさせんナ。ヽ(`Д´)ノウワァン

TOAnnotationXmlApplicationContext ctx =
   new TOAnnotationXmlApplicationContext("classpath*:applicationContext.xml");

ConfigurableListableBeanFactory factory = ctx.getBeanFactory();

//createBeanの第2引数の0とか1とか2とかね、第3引数のtrue, falseとかね。ヘ(゚∀゚ヘ)アヒャ
TargetBean bean = (TargetBean)factory.createBean(TargetBean.class, 1, true);
bean.xxx();

プログラムは漏れの本業じゃないのに…。
烏賊にも動きました的な記事は要らんよ。検証してから書けや!

spring-annotation 試したヤシ、居る?


863 名前:デフォルトの名無しさん mailto:sage [2006/11/01(水) 10:38:09 ]
試すならライターの記事よりもリファレンス見たり
テストケース触った方が良いかも知れんですよ。

annotation なんて無視するのが一番だと個人的には感じる。

864 名前:デフォルトの名無しさん mailto:sage [2006/11/01(水) 12:20:21 ]
間違ってるのに記事を起こすのはどうかと思うのです。

しかもSpring-annotation同梱のサンプル・ソースも同じコードだし、ドキュメントないし。

結局ソース追っかけてくしかないね。



865 名前:デフォルトの名無しさん mailto:sage [2006/11/01(水) 12:36:59 ]
Springにアノテーション使うと、エラく簡単になるよ。

866 名前:デフォルトの名無しさん mailto:sage [2006/11/02(木) 01:59:49 ]
>>865
どのへんが?

867 名前:デフォルトの名無しさん mailto:sage [2006/11/02(木) 11:11:00 ]
>>865
アノテーションでInjectionとか出来るなら使えるけど、そうじゃなきゃ意味ないぽ。




868 名前:デフォルトの名無しさん mailto:sage [2006/11/02(木) 11:21:38 ]
アノテーションでDIならEJB3でおk

869 名前:デフォルトの名無しさん mailto:sage [2006/11/02(木) 22:28:27 ]
>>862
普通に動いたけど。
それだとアノテーション書いてる意味なくね?

870 名前:デフォルトの名無しさん mailto:sage [2006/11/02(木) 22:34:44 ]
>>866 >>867
アノテーションの定義のやりかたによってはXML不要になる。
オレオレアノテーションの定義もそれほど難しくないし。

871 名前:デフォルトの名無しさん mailto:sage [2006/11/02(木) 23:17:18 ]
>>862
あと、createBeanの第2引数はファクトリの定数でいいかと。

872 名前:デフォルトの名無しさん mailto:sage [2006/11/03(金) 00:02:37 ]
>>869
え゛?

new TOAnnotationXmlApplicationContext("classpath*:applicationContext.xml").getBean("bean");
だと、
NoSuchBeanDefinitionExceptionが返ってきて"No bean named 'bean' is defined"って言われる。

factory.createBean(); で動きました?

>ファクトリの定数
ソース見たら、BY_NAMEは1だって書いてあったので。
ConfigurableListableBeanFactory.AUTOWIRE_BY_NAME
でいいわけですね。


873 名前:デフォルトの名無しさん [2006/11/07(火) 14:49:21 ]
spring hibernate strutsでアプリを組んでorg.hibernate.StaleObjectStateExceptionを発生したときのハンドリングって、global-exceptionで行うのが正しいのだろうか・・?

874 名前:デフォルトの名無しさん [2006/11/25(土) 18:53:10 ]
んでこのフレームワーク結構導入実績でてきた?
MSの.netもおんなじようなSpring出しているけど
最近なんかMSさん追随してません。

875 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 19:55:24 ]
.Netな世界ではみんなCOM+サービスに満足してるんじゃね?

876 名前:デフォルトの名無しさん mailto:sage [2006/11/26(日) 02:57:30 ]
.NET版SpringのSpring.NETって導入されてるんだろうか

877 名前:デフォルトの名無しさん [2006/11/26(日) 18:43:09 ]
Spring Web Flowってどうなの?
ドキュメンツ読んでもいまいちよくわからんし、管理するxmlが増えそうだし。



878 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 19:40:12 ]
>>876
Spring.NET 1.0.2ならC/SのWindowsFormsな案件で使ってる。
SpringにはFormとDataAccessを管理させてる。
あと、AOPでDataAccessモジュールのSQLクエリキャッシュとトランザクション制御をやってる。


879 名前:デフォルトの名無しさん [2006/12/06(水) 16:53:07 ]
なんで2chではspringとSeasarとでスレの勢いがぜんぜん違うの?
仕事(主に顧客の業務イントラ)でDIコンテナ使うとき、springを使うときのほうが圧倒的なのだが。
seasarを使っているというのをほとんど聞いたことがない。

ソフトウェアとしてどちらが優れているということについては
ここでは置いときますが、個人的にはSeasarには興味があるけど、
もっとspringのスレも盛り上がっていいと思うのだが・・・

880 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 16:58:10 ]
国産だし、どうしても目がいっちまう。

実際問題、Springで十分実用に耐えるんだけどな。
日本以外も含めれば、実績も多いみたいだし。

881 名前:879 mailto:sage [2006/12/06(水) 17:04:00 ]
>>880
2ヶ月前アメリカに行ってとあるカンファレンスに出席してきたけど、
やはりみんなspring使ってた。
SSH(Struts, Spring, Hibernate)を肌で感じた。

>国産だし、どうしても目がいっちまう。

おれの周りだけかもしれないけど、
みんなspringという名前は知っているけど、Seasarという名前は
知らない人が多い。

882 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 17:44:11 ]
>>879
教祖ネタというか、燃料が供給されるかの違いだと思うけど。

883 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 18:39:26 ]
まぁどっちもがんばってくれと言うことで。

でも2ヶ月前でまだStrutsってどうなんだろうな。
俺はもうリッチクライアント以外をお勧めする気にはならんですよ。
自分で作っててもムカつくし。
WebでやりたいならRailsにしましょうとか、そんな感じ。

884 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 19:50:33 ]
RIAの人気って業界ではどうなの?
Flash+JSFとかあっても良さそうなんだけど。
Flex2とかOpenLaszloとかもうちでは聞かないし。

885 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 23:56:01 ]
>879
ここはSpringのプロダクトをヲチするスレ
あっちはSeasarな人たちをヲチするスレ

886 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 23:56:45 ]
今後はAjax + Railsというパターンが増えてくる気がする

887 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 23:59:44 ]
RoRとJavaは市場がかち合うことは無いんだが・・・



888 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 00:05:30 ]
Ajax+Railsは、まだまだマニアのおもちゃだしな。

889 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 15:18:11 ]
おもちゃってことはないと思う。
あれはあれで立派なプロダクト。
なんだけどRailsって言うだけあって
規約にガチガチなのが俺には合わなかったです。

これはもう好みの問題だけど、
強い型付けでガチガチに守られつつも
コンポーネント間をゆるゆるにつなげるDIが
俺的には良い落とし所。

890 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 19:23:27 ]
Rails の考えかたって、「規約にガチガチ」なのかなぁ。
自分は、「いちいち書かなくてもだいたい分かるだろ」
だと思うんだけど。

891 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 21:58:41 ]
Rubyの決まりごとは「脳にフィットする」だそうだから
合わない奴に合わせる気はないから使わなくていいよって規約だろうな






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<243KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef