国産オープンソースDIコンテナSeasar2 その16

■ このスレッドは過去ログ倉庫に格納されています
2010/03/11(木) 22:15:49
一部で話題になっている国産オープンソースDIコンテナSeasar V2(略してS2)。
ってどうよ?みんなもう使ってるの?
使用経験とか、実戦配備情報とか、つかえねーよボケ、とかいろいろ書いてね。

本家 seasar.org
http://www.seasar.org/

Seasar Projectグループ
http://seasarproject.g.hatena.ne.jp/

ひがやすをblog
http://d.hatena.ne.jp/higayasuo/

前スレ
その1 http://pc5.2ch.net/test/read.cgi/tech/1092044210/
その2 http://pc5.2ch.net/test/read.cgi/tech/1098885253/
その3 http://pc8.2ch.net/test/read.cgi/tech/1102862221/
その4 http://pc8.2ch.net/test/read.cgi/tech/1119608621/
その5 http://pc8.2ch.net/test/read.cgi/tech/1135986150/
その6 http://pc8.2ch.net/test/read.cgi/tech/1148204750/
その7 http://pc8.2ch.net/test/read.cgi/tech/1153060167/
その8 http://pc10.2ch.net/test/read.cgi/tech/1165531719/
その9 http://pc11.2ch.net/test/read.cgi/tech/1170674234/
その10 http://pc11.2ch.net/test/read.cgi/tech/1176050197/
その11 http://pc11.2ch.net/test/read.cgi/tech/1190846507/
その12 http://pc11.2ch.net/test/read.cgi/tech/1203122931/
その13 http://pc11.2ch.net/test/read.cgi/tech/1215962870/
その14 http://pc11.2ch.net/test/read.cgi/tech/1224157275/
その15 http://pc12.2ch.net/test/read.cgi/tech/1237290499/
2011/02/01(火) 00:20:54
>>248
獄長乙
2011/02/01(火) 00:26:13
shotたんは次はどこに行くんだろう?
あと ISID に在籍していなくてもteedaには関われるんじゃないのかな。
2011/02/01(火) 00:31:19
TeedaどころかT2の面倒も見てないだろ
2011/02/01(火) 07:27:35
>247
一番いいのはaptとかでアノテーションに定義されたルーティングをひとつのファイルに書き出すことだと思うんだけど、まだそういうフレームワークはないよね。
253247
垢版 |
2011/02/01(火) 09:13:00
>>252
そういうWebフレームワークは私も知らないですね。
grep が結局一番早くて簡単か。

でもアノテーションになっているなら、*.classをスキャンしてファイルに出力することは可能かも。
(Cubby がそんな管理画面を持っていたような)
2011/02/01(火) 19:13:51
ルーティングはアノテーションより選任Filterに任せたい(極端な話web.xmlにはそれしか登録したくない)けど、
それ以外の情報はアノテーションの方が扱いやすくないかなぁ?
本当に「設定」なものはファイルで定義した方が管理しやすいけど。
あと、トランザクションはAOPでやるより明示的にTransactionScopeみたいなクラスを使用する方が個人的には好み。
2011/02/03(木) 01:06:52
なぁこれってアノテーションでセッション生成するのはいいけど有効期限とかどこで設定すんだ?
2011/02/04(金) 00:46:51
セッションの有効期限って、web.xmlじゃないの
2011/02/04(金) 08:07:45
それやってみたがダメだった。コンソールログにmaxInactiveIntervalとか表示されてるがずっと1800000のままだし
2011/02/23(水) 01:27:11.65
まぁしょせん国産のフレームワークなんぞこんなもんだな
2011/03/04(金) 18:31:44.92
今日仕事で初めてこれを使ってるプロジェクトに入った。
全然ソースの意味が分からんから、これから勉強するわ。
2011/03/06(日) 13:14:52.29
>>259
この発言だけで、どういう職種のどういう立場の人が、どういう状況でプロジェクトに入れられたか、だいたい推測できてしまう不思議。
よく考えれば異常だよね、この発言。どうやって仕事するつもりなの?
2011/03/06(日) 14:33:20.58
誰も初めはそうだろ。
2011/03/06(日) 14:38:31.47
>>260
私的に勉強していない技術を利用するプロジェクトにいきなり入れられるのが異常ということ?
残念ながらほとんどの会社はそんな感じじゃない?
2011/03/06(日) 14:58:43.64
このフレームワークがまともになってきたのってつい最近だろ。
1年前ぐらいまでなんか認知度全然なかっただろ。しらない奴多くて当然
2011/03/06(日) 15:15:00.79
>>262
残念ながらほとんどの会社がそんな感じなのが異常ということ。
全く車に乗らない人がいきなり業務でタクシー運転させられるのと似たような怖さを感じるよ。
2011/03/06(日) 15:32:56.96
>>263
3〜4年前でも知っていて当然だと思っていたが、違うのか。
2011/03/06(日) 18:04:46.96
当然とかどんだけだよw
3、4年前だと知ってても選択肢としては除外されるレベルだったろ
2011/03/06(日) 22:56:25.41
s2jdbc-genのgen-Entityで生成されるエンティティクラスのDate型をJava.uti.Date+TemporalType.TIMESTAMPにしたいと思っています。

http://d.hatena.ne.jp/akiraneko/20081015/1224075420
を参考にダイアレクトを作成したのですが、
columnTypeMap.put("date", new OracleColumnType("date", Date.class,TemporalType.TIMESTAMP));
の部分でコンパイルエラーになっています。
OracleColumnTypeのコンストラクタにString,Class,TemporalTypeはありませんとかなんとか…

どのように実装したらいいのでしょうか?
2011/03/07(月) 02:40:54.94
テンプレートいじって無理やり実装はだめ?
2011/03/08(火) 00:57:54.45
>>260
何でそんな事言われるのか知らんけど
キチガイなのか釣りなのか。
2011/03/08(火) 06:59:26.63
>>268
ありがとうございます
とりあえずテンプレートで実装してみましたが、なんか釈然としない…
まぁ使う分には問題ないんですが。
2011/03/11(金) 12:41:00.51
S2unitのテスト方法で質問させてください

DBを更新するモジュールをテストする際、現在日時が更新内容に含まれる場合のテスト方法がわかりません
現在日時はテスト実行タイミングに依存するので、期待値エクセルに値を書き込むことができません
期待値エクセルのDataSetとSqlReaderで取得したDataSetから1つずつ値を検証しようと考えたのですが、DataSetから値を取得する方法が判らず…

何かいい方法がありましたらご教授お願いします
2011/03/12(土) 03:41:02.17
日本語が意味不明なので却下
2011/03/12(土) 23:51:03.17
時間のカラムは、期待結果のExcelからはずしたほうがよい
2011/03/16(水) 22:34:54.11
1対多のテーブルを削除する時って、"1"のService内で"多"のService呼べばいいの?
それともAction内で各Service呼べばいいの?
2011/03/17(木) 23:26:36.53
Actionから複数Service呼ぶ。
2011/03/20(日) 01:02:08.97
どこにトランザクションのインターセプターかけてるかによるだろ
2011/03/26(土) 15:02:43.27
S3スレはどこ
2011/03/27(日) 09:27:44.00
S2UnitでDBの文字列項目に数字を入れたい時に先頭にアポストロフィを入れないと数値扱いになってしまうのはどうにもならないんですかね?
これをうまくしないと"000"が"0"になってしまって困ります。

http://seasarproject.g.hatena.ne.jp/abhrsh/20040718でソースを書き換えているけど、そんな勇気はないし…
そもそも検証だけでなく、データをWriteDBする時にすでにトリムされてしまうのががが

なんかうまく回避出来れば、アポストロフィをつけ忘れてシート作り直しという事態を避けられるのではと思っています。
2011/03/28(月) 09:17:29.63
EXCELの書式設定でセルの書式を文字列にしてもだめなの?
2011/03/30(水) 21:02:33.57
jdbc.diconって外だしできるの?
Tomcatならどこに配置すればいい?
2011/04/01(金) 23:14:41.15
>>279
返信が遅くなりました。
書式設定を変えてもダメですね…まぁ回避策があるのでそれをとればいいだけなんですが。

また、もう一つわからないことがあるのでご教授願います。

S2UnitのwriteDBでOracleに書き込みをする場合、Date/Time/TimeStampの切り替えはできないのでしょうか?
テスト用エクセルにyyyy/mm/dd hh:mm:ssと入力しても、DBに登録する段階でhhmmssが飛んでしまうようなのですが…
2011/04/12(火) 22:05:11.84
すいません、質問させて下さい。
sa-struts-tutorialをダウンロード後、tomcatで実行確認を行いました。
続いて、warファイルを作成してJBoss AS 6.0.0final上で動かそうとした所
何も表示されませんでした。
原因もしくはどこを見れば良いか分かりませんでしょうか?
2011/04/13(水) 02:05:16.39
ヒント:jboss糞
2011/04/15(金) 07:51:09.21
普通にTomcatでええやん
2011/04/16(土) 12:29:01.94
やはりjboss=糞でしたか。
私もjbossと糞の違いはどこか分かりませんでしたが
これで解決しました。
2011/04/18(月) 01:33:12.93
いやクソとかじゃなくて目的によるでしょ
SA使うなら別に設定面倒なjbossじゃなくていいじゃんって話で
2011/04/18(月) 11:04:50.79
JBossを使う局面というのは何か目的がある場合よりも
JBossを使うというのが目的の場合が多いのである。

そういう文化のおかげでJBossは生きているのである。
288デフォルトの名無しさん
垢版 |
2011/04/29(金) 18:25:11.28
生産性あがらんわ。
2011/04/29(金) 18:59:29.10
Seasar2を熟知していないと生産性は上がらないでしょw
290sage
垢版 |
2011/04/29(金) 21:50:06.54
熟知とかいらんだろ。
普通に感覚でわかる。
2011/04/29(金) 22:32:18.89
感覚でなんとなくわかるレベルでは生産性が上がるとは思えないけどなあ。
2011/04/29(金) 23:09:06.71
熟知してなきゃ生産性上がらないんなら使う意味あんのか?
いやそもそも熟知てなんだ熟知て
293sage
垢版 |
2011/04/30(土) 00:48:16.71
熟知いるのは、ベンダーのFWだろ。
WACSとか
294デフォルトの名無しさん
垢版 |
2011/06/19(日) 21:51:48.49
"ORM が危険なアンチパターンだっていうのはどれだけ言っても言い過ぎることはない"
http://tech.a-listers.jp/2011/06/16/orm_is_an_antipattern/
2011/06/25(土) 14:27:43.04
マルチするほどのことかね
296デフォルトの名無しさん
垢版 |
2011/06/26(日) 02:29:07.50
SQLファイルに、変更履歴コメントとか書いてる?
2011/06/26(日) 07:01:02.36
そういうのはバージョン管理のコメントに書けばいいだろ
298デフォルトの名無しさん
垢版 |
2011/06/30(木) 10:27:26.87
DIよりServiceLocaterの方が使いやすくない?
299デフォルトの名無しさん
垢版 |
2011/07/02(土) 00:24:10.49
ServiceLocaterってどんなんん?
2011/07/02(土) 03:11:33.72
JNDIだな
2011/07/02(土) 15:04:23.90
DIがモジュールのプラグイン化フレームワークなのに対して、
ServiceLocaterはAbstractFactoryとかBuilder見たいなデザインパターン。

従ってDIは設計フレームワークの側面から本来の目的だけでなく
無数の能無しを統制する目的でも広く使われてる。

少人数・小規模・ベテランならServiceLocaterの方が手軽な場合もある。
302デフォルトの名無しさん
垢版 |
2011/07/05(火) 22:13:45.84
俺たちの獄長が世界の獄長に
303デフォルトの名無しさん
垢版 |
2011/07/05(火) 23:57:35.85
node.jsか
2011/07/09(土) 12:10:44.14
S2JDBCのマイグレーション機能について質問です。
ttp://s2container.seasar.org/2.4/ja/s2jdbc_gen/index.html#マイグレーション
このページには以下のような説明があります。
> マイグレーションの大まかな処理の流れは次の通りです。
> 1. 古いバージョンのデータベーススキーマを削除する。
> 2. 新しいバージョンのデータベーススキーマを作成する。
> 3. 新しいバージョンのデータをロードする。
> 4. 新しいバージョンのデータベーススキーマに外部キーを適用する。

質問1. これはつまり、マイグレーションをするまえに何らかの方法で既存のデータを保存しておかないといけないのでしょうか。
質問2. だとすると、実運用中のデータベースが巨大な場合はこの方法だと厳しいように思いますが、皆さんどうされてますか。
2011/07/09(土) 12:23:56.73
使ったこと無いけど、説明読む限り実運用は想定していなくて、開発環境用のDB構築にのみ使うんじゃない?
2011/07/09(土) 23:30:23.30
>>304
http://s2container.seasar.org/2.4/ja/s2jdbc_gen/tasks/dump_data.html
2011/07/10(日) 11:14:20.47
運用中にやるなよ
308デフォルトの名無しさん
垢版 |
2011/07/31(日) 09:59:54.37
枯れたとか強弁する奴もいるけど、失速したねぇ…。
309デフォルトの名無しさん
垢版 |
2011/08/01(月) 01:07:15.40
今フレームワーク選ぶなら何なの?
2011/08/01(月) 21:25:48.51
Play
2011/08/07(日) 16:14:12.85
チビ のヒガくんはよろしくやってんの?
2011/08/07(日) 22:39:24.55
フランス滞在でリア充満喫
313デフォルトの名無しさん
垢版 |
2011/08/13(土) 02:49:17.72
>>309
Struts
2011/08/15(月) 17:01:13.84
スレ読んでみたが一つ気になる点がある。
獄長って誰?ググってもよくわからん。コミッタの人?
全員知っているって前提でスレ進行してるの?
2011/08/16(火) 09:36:32.72
全員知ってるからそういう前提になるな。
2011/08/17(水) 15:45:26.00
>>315
もし獄長という方がブログやtwitterやってるコミッタの人でしたら
URL教えていただけないでしょうか。
2011/08/17(水) 19:19:16.26
軍曹に聞いてみたら?w
2011/08/17(水) 20:10:19.97
>>316
http://twitter.com/#!/koichik
http://d.hatena.ne.jp/koichik/
2011/09/05(月) 14:56:17.86
Cubbyというフレームワークの資料に
ttp://event.seasarfoundation.org/sc2009spring/viewAttachment.do?_pageName_=Session&_fileName_=sc2009spring_s603_2_cubby_in_action.pdf

10ページにこんなコードがありました。

@Path("todo")
public class ToDoAction extends Action{
  // /todo/new
  public ActionResult new(){...}

  public Integer id;
  // /todo/100
  @Path("{id,[0-9]+}")
  public ActionResult index(){}
}

これを見ると、「new()」というメソッドを定義しています。
しかしJavaではnewは予約語なので、このようなメソッドは定義できないのではないでしょうか。
Cubbyではどのような仕組みで「new()」メソッドを定義しているのか、知っている人がいれば教えて下さい。
2011/09/26(月) 10:49:01.71
数年前に試したら
Logger logger = Logger.getLogger(Foo.class );
これ一つでlog4jにクラスがキャッシュされてS2のHOT deployが効かなくなって
こりゃダメだと思ったんだけど、お前ら本当にHOT deployを便利に使えているの?
2011/09/26(月) 13:42:04.78
うん、ログはAOPでやるからね。
2011/09/26(月) 15:23:19.35
>>321
ホントに?
straceの出力みたいに重要度関係なしに全出力で大変になんない?
AOP適用だと階層カテゴリーロガー使えないんじゃないかと思うけど、どうしているの?全出力orナッシングなのかい?
あと、もしS2関係者の書き込みなら、「ハマりポイント知ってるんならドキュメントに書いとけや」と言いたい。
2011/09/26(月) 17:09:57.32
ほんとだよ。なんでAOPだとカテゴリーだめって思ったの?
traceInterceptorの中身見てみるといいよ。
そんな大した事やってない。
logging.propertiesの設定だってちゃんと反映されるよ。
正体はlog4jそのまんまだから。
2011/09/26(月) 17:56:02.98
>>323
ごめん323氏の言ってることがよくわからない。
Logger.getLogger() の引数に与えたクラスの完全修飾クラス名が階層カテゴリーとして扱われると思ったんだけど。
俺の用語の認識が間違ってる? 一応その前提で書くよ。

http://www.seasar.org/source/browse/s2container/trunk/seasar2/s2-framework/src/main/java/org/seasar/framework/aop/interceptors/TraceInterceptor.java?revision=4487&view=markup
を見ると
private static final Logger logger = Logger.getLogger(TraceInterceptor.class);
logger.debug("BEGIN " + buf);
invocation.proceed();
logger.debug("END " + buf);
ってシンプルにログ出力しているだけで別に予想通りだった。
weaving targetのFQDNカテゴリにログを吐くとかやってない。
パフォーマンスを考慮するとやらんでいい気がするけど。

>>なんでAOPだとカテゴリーだめって思ったの?
この場合TraceInterceptorカテゴリーにログ出力が行くと思ったので。
「業務A、業務Bのようにパッケージごとにログ分けたい場合に困る」というシチュエーションを想定して書いた。
2011/09/26(月) 23:30:19.36
>>319
ただのミスだよ
2011/09/26(月) 23:52:52.07
>>320
それcommons logging 1.0のバグ。1.1でおk
2011/09/27(火) 00:23:22.02
>>326
commons loggingのサイト見ると1.1 Release - 10 May 2006 で相当昔だから、たぶん当時は多分1.1以降を使っていたと思うけどなあ。もうワカンネ。
当時はLogFactory#release()とかそういうの全部試したけど、なんか特別なバグがあったの?
https://issues.apache.org/jira/secure/IssueNavigator.jspa?pid=12310484
を「cache」で検索してもヒットしない。bugidとか知ってたら教えて。
2011/09/27(火) 00:31:44.24
ゴメン今「cache」で検索したらヒットした
https://issues.apache.org/jira/browse/LOGGING-126
あたりか?でもAffects Version/s:1.0, 1.0.1, 1.0.3, 1.0.4, 1.1.0, だから違うか。
2011/09/27(火) 00:34:12.82
leakでさがしたらこれヒットした
ttps://issues.apache.org/jira/browse/LOGGING-51
2011/09/27(火) 00:49:15.01
>>326
もし貴方がS2関係者なら、なんだけど。違ったら無視してね。
つーか本当にFAQ的な情報持ってるならアナウンスしろやコラ
2011/09/27(火) 09:37:27.28
>>324
ぎゃー俺、アプリ内でカテゴリ分けとか念頭なかった
ごめんなさい。
久しぶりに自己嫌悪なレスしちゃった・・・
332デフォルトの名無しさん
垢版 |
2011/09/27(火) 09:51:47.22
>>330
普通にアナウンスされてただろ
2011/09/27(火) 10:55:27.36
>>330
いつ、どこで?
「Seasar2 HOT deploy Logger.getLogger」とか事象を知ってる場合でさえググっても
それらしいのがヒットしないように思えるけど、知見がない状態でどうしたらその情報にアクセスできるのか教えて。
煽りじゃないので割と真面目に回答してくれると嬉しい。
334333
垢版 |
2011/09/27(火) 10:56:40.52
ごめんアンカ間違えた。>>330じゃなくて>>332です。
2011/09/27(火) 16:23:09.82
詳しい人多そうなんで聞きたいのですが
「S2Axis(2) では HOT/WARM deploy は使用できません.」ってのfixされた or する予定ってありますか?
http://ml.seasar.org/archives/seasar-user/2009-April/017209.html
2011/09/27(火) 17:55:26.08
いくら詳しくたってコミッタの心の中まではわからない
337デフォルトの名無しさん
垢版 |
2011/09/27(火) 20:22:29.71
"ORM が危険なアンチパターンだっていうのはどれだけ言っても言い過ぎることはない"
http://tech.a-listers.jp/2011/06/16/orm_is_an_antipattern/

・ORMはSQLベースのモデルよりも最初のうちはシンプルで理解しやすく、手早く書く事ができる。
・効率はどんなプロジェクトでも最初の頃は十分。
・不幸にもそれらのアドバンテージはプロジェクトが大きく複雑になると消失し、
 抽象化は破綻し、開発者はSQLを使わなければならなくなる。
・ORMの抽象化はほぼ100%のプロジェクトで破綻する。
・オブジェクトはリレーショナルなクエリの結果を表現するのには不適切。
・不適切にクエリをオブジェクトにマッピングすることによって、ORMを廃止しない限り
 簡単には修正できない非効率性がアプリケーションのあちこちにばらまかれる
・オブジェクト指向設計はリレーショナルなデータを効率的に表現できない。
 これはORMが解決できないオブジェクト指向デザインの根本的な制限だ。
2011/09/27(火) 21:41:38.15
S2JDBCを使うときってS2Dao+S2PagerのPagerSupportみたいなのってある?
2011/09/29(木) 13:05:44.43
>>324 が言ってるみたいな
AOPで「weaving targetのFQDNカテゴリにログを吐く」やつってある?自作しないとダメ?
2011/10/07(金) 08:38:18.95
ORMはボトルネックがSQLだと判明した時点で終るな
2011/10/07(金) 20:39:46.26
SQLファイルにしてもだめ?
そこまで速度気にするものなら、最初からORMという選択肢はないと思う。
対して負荷の無いWebまで、appendappend・・・ってSQL組み立てるの
見るとマジむかちゅく
2011/10/11(火) 09:53:12.34
俺はSQL書く所より、オブジェクトに値を詰め込むのが
いやになってきます。SQLは好きなので。
2011/10/14(金) 17:56:34.95
ORMなんて1件1件データ登録する時に楽なだけで取り出す時はゴミ以下にしかならんと思う
Beanと同じ形で取り出すことなんてまずない
2011/10/14(金) 20:39:29.85
俺はView作ってそのまま使ってるからORMべんりーなんだけど、邪道なのかな・・・
2011/10/14(金) 20:47:17.13
いや普通
いまだとJPAでやるからEntityクラスほぼそのままてのがほとんどだわ
2011/10/17(月) 02:17:16.79
レベル低いカスしか集まってないのかよw
まさかSeasarのライフサイクルも解析してない屑底辺じゃねーだろうなw
そんな馬鹿の分際で品定めしてる底辺ww
2011/10/17(月) 02:23:16.04
>>160
本当にカスが多いなw

技術者なら両方の仕組みを完全に理解して
マスターしてるのが当然なんだが
その上で客の要望に最適解を求めていく
最適なのがSpring系で実現できそうならそっちを提案すれば良い

その本質的な技術の理解も出来てない底辺どもが
「流行ってるから」とか「主流だから」とか「国内だけだから」とか

日和見的な発言ばかりする底辺PGがいかに多いことかw
死ねよw

2011/10/17(月) 02:38:37.10
>>260
底辺PGなんてそんなモンだろw
いきなり、どっかのプロジェクトに入れられて
そこでフレームワークの「使い方だけ」覚える
使い方覚えても技術の本質がわかってねーから意味ないんだがw
まぁ使う側にとっちゃ、決まったルールで生産が出来ればそれでいいから無問題
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況