04/09/12 10:56:03
クラスもかなり増えてきた
Apache Jakarta Commons について語るスレッド
Apache Jakarta Commons
URLリンク(jakarta.apache.org)
中でも便利なものが
Commons Lang
URLリンク(jakarta.apache.org)
Commons Collections
URLリンク(jakarta.apache.org)
Commons FileUpload
URLリンク(jakarta.apache.org)
とくにLangには equals(), hashcode(), compareTo(), toString()
メソッドを簡単にオーバライドできるメソッドが用意されており重宝する。
そのほか、NestableExceptionはC#のような言語に頼らなくても
投げられ続けた例外を上書きせずに保持する事ができるので便利。
Collectionsは java.utilのコレクションクラスに不満を持つ者にとっては
朗報だ。ListとHashを兼ねた便利なクラスも用意されており、その数は豊富である。
2:デフォルトの名無しさん
04/09/12 11:32:06
・・・つうかJakartaスレでいいじゃねぇか。
削除依頼だしとけ。
3:デフォルトの名無しさん
04/09/12 11:43:15
Jakartaスレは落ちたんだよな。
個人的にはApache/Jakartaスレとかにした方がいいと思うんだけど。
Jakartaスレにすると「Antの質問はここでいい?」とか出るし、途中でJakartaからApacheプロジェクトになるものもあるし、
ここもCommonsに限定するとそれ以外の質問はどこで?ということになる。
どれもたいしてスレの流れが速いわけじゃないから統一していいと思うんだよな。
4:デフォルトの名無しさん
04/09/12 11:46:44
まあ、Jakartaスレの続きってことでいいんじゃねーか?
どうせスレタイにCommonsとか書いてあっても
「Antの質問はここでいい?」ってくるよ
同じことだ
5:デフォルトの名無しさん
04/09/12 11:47:41
sageわすれたスマソ
6:デフォルトの名無しさん
04/09/12 11:48:39
Commonsを字面のまま受け取るということで。
Apache Jakarta 共通スレッド。
7:デフォルトの名無しさん
04/09/12 11:50:12
>>1に書いてあることからそれは無理があるけどな・・・
8:デフォルトの名無しさん
04/09/12 11:52:44
>>7
しかし、1が挙げたものは使い方も単純で、議論の余地もなく、だから何?というものだからなぁ。
DigesterとかValidatorとか、ちょりっとめんどいものならトモカク。
9:デフォルトの名無しさん
04/09/12 11:58:44
AntやTomcatでさえ単独スレ無いのに・・・
>>1 は空気・ふいんき(←なぜか変換できない)を読めない奴に違いない
10:デフォルトの名無しさん
04/09/12 11:59:19
Tomcatは昔単独スレなかったっけ
11:デフォルトの名無しさん
04/09/12 12:03:38
Commons BeanUitls
Commons Configuration
Commons DBCP
Commons DBUtils
Commons Net
Commons Math
Commons Pool
も使える
12:デフォルトの名無しさん
04/09/12 12:06:02
さっそくですが質問があります。
Commons Digesterを使って作成するBeanのコンストラクタをpublicにしたくありません。
これは可能ですか?
13:デフォルトの名無しさん
04/09/12 12:07:02
>>10
かなり昔?別板じゃないの?WebProg板とか。
Tomcat4.0のころは、スレが必要なほどだったけど、もうプロジェクト的にも利用者的にも落ち着いたからな。
14:デフォルトの名無しさん
04/09/12 12:08:12
>>12
で、どうやって使うツモリ?
15:デフォルトの名無しさん
04/09/12 12:16:21
Apache Jakara Project-2.0 【Java】
スレリンク(tech板)
16:デフォルトの名無しさん
04/09/12 12:19:35
>>13
URLリンク(www.wikiroom.com)
17:デフォルトの名無しさん
04/09/12 12:28:24
>>12
Digesterってどういう香具師?
18:デフォルトの名無しさん
04/09/12 12:31:26
>>14
できればgetterメソッドだけpublicにして使わせたいのです。
19:デフォルトの名無しさん
04/09/12 12:33:16
>>17
XMLからJavaのオブジェクトを生成する。
主にXMLで記述した設定ファイルからJavaのオブジェクトに変換するために使う。
DIコンテナの機能限定版だといえなくもない。
20:デフォルトの名無しさん
04/09/12 12:33:46
>>18
で必要になるオブジェクトはどこで生成するつもり?
21:デフォルトの名無しさん
04/09/12 12:34:17
漏れの持っているログ
jakarta TOMCAT 2
スレリンク(tech板)
《The Jakarta Project》
スレリンク(tech板)
22:デフォルトの名無しさん
04/09/12 12:36:36
このスレは、新しい質問・話題をうけつけてません、ってことでOK?
23:デフォルトの名無しさん
04/09/12 12:39:10
>>20
それをなんとかDigesterでできないかなと、、、、
24:デフォルトの名無しさん
04/09/12 12:41:16
>>19
なんというか、SOAPとか
シリアライズに似ているな
25:デフォルトの名無しさん
04/09/12 12:43:36
>>24
逆。
XMLにシリアライズされているものをオブジェクトに戻す。
タグごとに生成するオブジェクトを決めれる。
26:デフォルトの名無しさん
04/09/12 12:44:03
>>23
コンストラクタじゃなくてファクトリを使わせるつもり?
27:デフォルトの名無しさん
04/09/12 12:46:30
Antの質問はここでいい?
28:デフォルトの名無しさん
04/09/12 12:49:17
>>26
それいいですね。staticめ祖度dの呼び出しとか可能ですかねぇ。
29:デフォルトの名無しさん
04/09/12 13:21:48
>>28
お手軽にXMLからオブジェクトにするためのものだからなぁ。
Relaxerとか、ほかのモノ調べてみたら?
30:デフォルトの名無しさん
04/09/12 16:25:51
>>25
つまり、DigesterがあればSOAPとかWSDLがいらなくなるってこと?
31:デフォルトの名無しさん
04/09/12 16:27:44
>>30
外出してたんで返事遅れてスマソ
ありがと、他の手段も検討してみます。
じゃ、このスレはこれで終わりね。
##########################################################
移行先スレ
【Java】Apache Jakarta Commons
スレリンク(tech板)
32:デフォルトの名無しさん
04/09/12 16:46:29
ΩΩΩ<なんだってー?
33:デフォルトの名無しさん
04/09/12 16:49:03
>>23
Javaのオブジェクト生成はコンストラクタかデシリアライズか
クローンのいずれかを経なければならなので普通に考えると無理っぽい。
Digesterって簡単に言ってしまえば、XMLを読み込みつつ、
既成のBeansクラスを生成してsetXXXしていくだけのもんだか
らなあ。
強いて言えば、Digesterからはファクトリ経由で生成するようにして、
ファクトリではそのオブジェクトをシングルトンとして扱う、くらいか
な。
34:デフォルトの名無しさん
04/09/12 16:55:46
>>30
シリアライズされないって。
機種非依存でもないし。
35:デフォルトの名無しさん
04/09/12 21:12:21
>>30
出直してこい
36:デフォルトの名無しさん
04/09/13 20:40:19
JJar っていうのが気になるんだけど何をするものかがわかんねぇッス
37:デフォルトの名無しさん
04/09/13 21:04:21
>>36
Jakartaの最新リリースを自動的にとってくる仕組みらしい。
opt-getみたいなやつかな。
antから使えるみたいだね。
38:デフォルトの名無しさん
04/09/13 23:31:34
よみかたは「ジャジャー」ですか?
39:デフォルトの名無しさん
04/09/14 03:16:26
>>36
CPANのJava版だよ。
Apache MavenでもAPIの自動ダウンロードに使われている。
40:デフォルトの名無しさん
04/09/14 03:17:19
>>36
CPANのほかに、
FreeBSDのPorts. Linuxのyumみたいなものだろうか。
41:デフォルトの名無しさん
04/09/14 03:22:03
Jakartaスレの前スレでも同じ話が出てたな
42:デフォルトの名無しさん
04/09/18 18:23:16
commonsいいね、ソース読んでぱくらずにはいられなくなった。上手だね使い方
俺用にcommons.jarっての全部まとめた奴で配布してください。
43:デフォルトの名無しさん
04/09/19 03:23:39
すでにライブラリだから、パクるひつようもない・・・
44:デフォルトの名無しさん
04/09/19 04:55:20
マジレスすれば、たぶんソースコードで使われている技術的な
パターンというかやり方を、別のとこで流用するとか、そんな
話だとおもう
45:デフォルトの名無しさん
04/09/20 03:59:04
DIgester で
Commons Digester URLリンク(muimi.com)
の例での addChild() のよーなメソッドを入れずに ルールの記述だけで
子要素を追加する方法ってあるだろーか?
46:デフォルトの名無しさん
04/09/20 05:34:08
>>45
なんか質問の意味がいまいちつかめん。
DigesterだとSetNextRuleで親コンポーネントに自分を登録する、
てのは普通のことだと思うが、それをしたくないってこと?
だとすると、具体的にどういうのが理想だといってるんだろ?
47:デフォルトの名無しさん
04/09/20 13:05:05
>>42
Mavenで自動ダウンロードしちゃえばそんな
手間も掛けずに済むでえ
48:デフォルトの名無しさん
04/09/20 13:15:07
>>34
やっとDigesterがどんなものかわかったよ。
ようするに、ぶっちゃけ
JAXBみたいなもんだったんだね。
49:デフォルトの名無しさん
04/09/20 15:21:28
>>48
つうか、SAX2をつかってXMLを読み込んで、対応するbeanを
簡単に作成する技術だと思いねえ。
SAX2もDOMも「読むだけ」でbeanは自前で作るんで、その辺を
解決しようと言うものだな。
50:45
04/09/20 20:39:50
>>46
getXXX()/setXXX()メソッドのみ記述していある普通のbeanを素で使いたいの
だが、Digesterの場合はプログラム中で必要なくても 子要素追加には
addXXX() が必要になるじゃんスか。
51:デフォルトの名無しさん
04/09/21 03:59:31
>>50
??????
SetNextRuleというのは、終了タグが来た時に親オブジェクトに対して
「引数の文字列で指定したメソッド」を実行するルールだぞ?
たしかにDigesterのサンプルの大部分は下のような例になっている。
digester.addSetNext( "hoge/hage", "addHage");
でもこれは hoge/hageが見つかった時に親オブジェクトに対して
addHage()メソッドを呼べ、という意味だろ。
じゃあ、上記の第2引数を「setHage」と書き換えたらあんたの希望
の動作になるんじゃないのか?
52:50
04/09/21 23:36:38
>>51
言葉足らずですまん。子要素ってのは単一項目じゃなくてList系のやつ。
希望の動作としては
子要素作成、子要素作成、子要素作成、子要素リストを一気に登録。
書き方がわかるやりかたは
子要素作成・追加、 子要素作成・追加、 子要素作成・追加、…
って感じかなぁ。
しかし、strutsとかで使っているDigesterから生成する設定クラスもaddXXX()メソッド
みたいなのばっかだから、これでいいか…。
53:デフォルトの名無しさん
04/09/22 00:22:41
>>50
お前は何を一人でぶつぶつ言ってんだよ。
54:デフォルトの名無しさん
04/09/22 00:24:48
変な人は放置しよう
55:デフォルトの名無しさん
04/09/22 01:10:42
>>52
Digesterの話をしてるんだからXMLとJavaで話せ。
こういうXML文書をこういうクラスにマップする、みたいに。
56:デフォルトの名無しさん
04/09/22 01:33:28
>>33
リフレクション使えばprivateだろうが問題ない。
57:デフォルトの名無しさん
04/09/22 01:43:53
>>56
マジデスカ?
58:デフォルトの名無しさん
04/09/22 02:13:35
digester は、JavaとXMLだけではちと直感的にわからない。
Stackを頭に描きながらサンプルを追いかけるべし。
59:33
04/09/22 02:15:50
>>56
そっか。そりゃそうだな。
それでFactoryCreateRule使って、ファクトリ内で
リフレクションを使ってオブジェクト生成してやるか。
60:デフォルトの名無しさん
04/09/22 02:30:42
よく考えれば依存性注入ってそうやってやってるんだったな....
61:デフォルトの名無しさん
04/09/22 02:31:31
>>56
呼び出したらエラーでない?
62:デフォルトの名無しさん
04/09/22 02:51:17
単純に
Test.class.getDeclaredMethod("test", null).invoke(obj, null);
とやってprivateなtestメソッド呼び出したらIllegalAccessException出るんだけど、DigesterからならOKなの?
63:デフォルトの名無しさん
04/09/22 15:18:29
>>62
setAccessible(boolean)
または
AccessibleObject.setAccessible(AccessibleObject[],boolean)
は実行した?
これしないとフィールド取ってきてもアクセスできない。
64:デフォルトの名無しさん
04/09/22 20:41:01
>>63
えー、そうなん。
知らんかった。
疑ってごめんよ。
65:デフォルトの名無しさん
04/09/26 18:45:32
>>64
ここ見ろ。
URLリンク(muimi.com)
66:デフォルトの名無しさん
04/09/27 02:10:13
・・・なぜこの文脈で紹介されるのか、意図が不明だった。
67:デフォルトの名無しさん
04/09/27 16:36:18
>>15のスレがDAT落ちした・・・。
68:デフォルトの名無しさん
04/09/28 01:11:45
あっちが本スレのはずだったのに・・・
69:デフォルトの名無しさん
04/09/29 11:31:27
jakarta-commons/comboすげーぜ
エラーで詰まるけどね
70:デフォルトの名無しさん
04/09/29 14:30:41
>>69
combo?なにそれ?
71:デフォルトの名無しさん
04/09/29 23:02:52
digesterよりbetwixtの方がもっと簡単にJava⇔XML変換できそうなんだけど
使ってみた奴いる?
72:デフォルトの名無しさん
04/09/29 23:31:49
>>71
それはまあ事実なんだけど、betwixtのXML形式でいいや、というときだけだぞ。
digesterは任意のXMLファイルを読み込んでJavaBeansを生成する技術。betwixtは
JavaBeansを所定の形式のXMLファイルへ変換(または逆)するものだな。
betwixt自体、内部でdigester使ってるし。
73:デフォルトの名無しさん
04/09/30 00:53:48
>>71
digesterはXML→Javaでしょ。逆はないよ。
74:デフォルトの名無しさん
04/09/30 01:26:07
>70
URLリンク(cvs.apache.org)
ここなんだけど、かなり古い情報でこしらえる。これは利用するもんじゃないの?
ちゃんとこしらえてくれるならいいと思うんだけど
75:デフォルトの名無しさん
04/09/30 01:55:40
>>74
表にはでてないよね?
なにするもの?
76:デフォルトの名無しさん
04/09/30 11:13:59
comboはcommonsのライブラリ群を1つにまるめるだけです。
antタスクで1つずつ落としてビルドしてく原始的なもんです
自分は助かったんですが、ここの住人には無意味かも知れません
77:デフォルトの名無しさん
04/09/30 14:11:53
ちと質問です。
betwixtを使って、XML⇔Beanを相互変換するわけですが、
そのとき、Beanが複数のクラスで構成されている場合、つまり
例)
public class AbcForm extends ActionForm {
private ArrayList xyzList = new ArrayList();
public void setXyzList(Xyz aRec) { xyzList.add(aRec) }
public ArrayList getXyzList() { /*省略*/ }
}
public class Xyz{
private String x = new String("");
private String y = new String("");
private String z = new String("");
/*以下、setter getter*/
}
こういうクラス構成の場合、Bean→XMLに変換するときはうまく変換してくれるのですが、
XMLからBeanに変換するとき、Xyzのフィールドに値が入ってくれません。(Xyzクラスのgetter setterが呼ばれない)
やはり、Xyzクラスのsetter getterはAbcFormクラスの中に作成しないとダメなんでしょうか?
78:デフォルトの名無しさん
04/09/30 14:24:32
>>76
mavenなら不要、とかそんな話かな。
79:デフォルトの名無しさん
04/09/30 17:08:34
>78
ずばりそうです
80:デフォルトの名無しさん
04/09/30 23:03:11
>>77
URLリンク(jakarta.terra-intl.com)
public class SomeBean {
public <CollectionType> getFoo*();
public void addFoo(<SingularType> foo);
}
できるっぽい。試して報告汁
81:デフォルトの名無しさん
04/10/01 02:07:13
>>80
情報㌧クスです。
Adderメソッドですか・・・。
月曜にでも試して報告します。
ありがとうございました!
82:77
04/10/06 00:18:25
遅れました。betwixtのリスト構造での動作確認しました。
addメソッド使えばリスト構造もイケます。
ArrayListとかも使えるので結構便利です。ですが、
リスト構造の場合、まだbetwixtファイルとの連携ができてません。
(できてる人いたら教えてください・・・)
<addDefaults/>を使えば、それなりに自分の望んだ形にはなってくれるのですが・・・。
>>77のようなクラスの場合、betwixtファイルを使うときははAbcFormクラス用とXyzクラス用の
betwixtファイルを作成する必要があります。
そんな感じっす
83:デフォルトの名無しさん
04/10/07 23:22:33
>82
どの部分が引っかかってるのか
もう少し詳しく教えていただけないでしょうか?
84:デフォルトの名無しさん
04/10/09 03:00:14
デフォルトだと
<xyzList>
<xyz>
<xyz>
</xyzList>
みたいな構造のXMLが変換可能で<xyzList>タグが必要になる。
これを防ぐには.betwixtファイルが必要(最低6行程度のXML)
.betwixtファイルなしではできなそうだが・・・何か方法あるのか?
85:デフォルトの名無しさん
04/10/09 17:42:16
betwixtファイルなしだったら、㍉じゃね?
そもそもbetwixtファイルなしじゃないといけないことってあるのかな?
86:デフォルトの名無しさん
04/10/09 22:32:33
commonsのsandboxの位置付けは何ざましょ
見てかなり有用なもんだとは思ったのですが、利用されてますか?
87:デフォルトの名無しさん
04/10/10 01:15:35
>>86
Sandboxにあるのはまだテスト中というか、commonsに組み込める品質に達してない、
試行錯誤段階にあるってこと。
88:デフォルトの名無しさん
04/10/11 10:29:39
サンドボックスモデルのこと
89:デフォルトの名無しさん
04/10/20 20:36:45
みんなjakartaぐらい綺麗なコード扱ってるかい!!???
自慢じゃないが比較にならない程にごちゃごちゃで汚いコードです。
恐縮です。
90:デフォルトの名無しさん
04/10/20 21:08:48
Jakartaもマイナーなところは結構コードがきたなかったりする。
91:デフォルトの名無しさん
04/10/24 11:14:23
Jakartaは綺麗だよな。
GNU関係のは結構ひどい。
92:デフォルトの名無しさん
04/11/11 22:50:01
xmrpcが日本語対応してないって↑記事があったので
変更してコンパイルしようとするとコンパイルが通らない
antかと思ったらmavenみたいでantでコンパイルしてもコンパイルは
通るけどうごかず、mavenでコンパイルしようとすると
以下のようなエラーがでるんですけど、どうすればいいんでしょうか・・
---------------------------
Attempting to download jsse.jar.
WARNING: Failed to download jsse.jar.
Attempting to download jnet.jar.
WARNING: Failed to download jnet.jar.
Attempting to download jcert.jar.
WARNING: Failed to download jcert.jar.
The build cannot continue because of the following unsatisfied dependencies:
jsse.jar (try downloading from URLリンク(java.sun.com))
jnet.jar (try downloading from URLリンク(java.sun.com))
jcert.jar (try downloading from URLリンク(java.sun.com))
93:デフォルトの名無しさん
04/11/11 23:15:34
その3つのjarダウンロードしてきて
ローカルリポジトリに手動で入れるしかないんじゃない?
エラーメッセージもっとないとこれ以上はわからん
94:デフォルトの名無しさん
04/11/11 23:28:36
>>93
レスありがとうございます
エラーメッセージはあと
----
Total time: 6 seconds
Finished at: Thu Nov 11 22:57:39 JST 2004
----
だけです…。mavenのリポジトリフォルダってやたらたくさん
フォルダがありますけど、どこに入れたらいいかわかります?
ダウンロードできない理由もよくわからず・・・
95:デフォルトの名無しさん
04/11/11 23:30:23
・・・92でアドレス貼り忘れてた参照したページ
XML-RPCのソースの以下の箇所を修正した。
URLリンク(blog.livedoor.jp)
XML-RPCは日本語にデフォルトでは対応させていない
URLリンク(backno.mag2.com)
96:デフォルトの名無しさん
04/11/11 23:38:11
maven --debug でやってみると何かわかるかも
97:デフォルトの名無しさん
04/11/11 23:54:51
>>96
おーいっぱい情報でますねー。
ちょっとこれ調べてみます。基本的なこともしらずに申し訳ないです・・・。
レスありがとうございました~。
98:デフォルトの名無しさん
04/11/11 23:54:54
デフォルトのリモートリポジトリwww.ibiblio.org/maven にダウンロード
しに行って404のようですね。
99:デフォルトの名無しさん
04/11/12 00:19:23
>>98
レスありがとうございます。
どうやらそのようです。で、そこで表示されてたローカルリポジトリ(こんなとこだと
思ってませんでした)にダウンロードしてjarを入れてコンパイルしたら
buildは通ったのですが、生成物が見あたりません・・・
maven.xmlで定義されてる${maven.build.dir}ってどこのことなんでしょうか・・・
100:デフォルトの名無しさん
04/11/12 01:03:14
解決してないけど今日は落ちますー
回答くださった方ありがとうございました
101:デフォルトの名無しさん
04/11/12 01:04:48
maven jar
で target/xmlrpc-1.2-b1.jar が出来上がったよ。
102:デフォルトの名無しさん
04/11/12 01:12:35
mavenのスレ誰か作って。このスレと同じ過疎スレになるかもしれんが・・・
慣れるまでが結構大変なんだけど、慣れるとめちゃめちゃ便利なツール。
リファレンスは少なめ。悲しい
103:デフォルトの名無しさん
04/11/12 01:14:14
>>101
おおおおおおおおおおgoal指定になるのかな?
antと同じ感覚で
$maven
としか入力してませんですた・・・ちゃんと書くべきでしたね。
一回目失敗して二回目で無事できました!
ホントにありがとうございました<m(_)m>
104:デフォルトの名無しさん
04/11/12 01:15:30
>>102
さっきみつけたんですが
【玄人】我が名はプロジェクトマネージャーMaven@プログラマー
スレリンク(prog板)l50
にあります。マ板ですが・・・すでに過疎の風が吹いてます。
やっぱム板にたてるべきですよね、PMだからムだそうですけど
105:デフォルトの名無しさん
04/11/12 01:53:35
MavenでJakarta CommonなどJakartaに
存在するすべてのライブラリをダウンロードするには
どうすればいいのかな?
わざわざ長いXMLコードを書かないといけないのかな?
106:デフォルトの名無しさん
04/11/23 00:06:01
JRCS無くなったのか・・・CVSに残骸しかない・・・
APIリファレンスどっかに落ちてないかなぁ
107:デフォルトの名無しさん
04/11/23 04:28:04
Commonsじゃないけどよさげなライブラリ見つけたのであげ
Joda-Time
URLリンク(joda-time.sourceforge.net)
日付と時間のライブラリ。Date,Calendarの代用
ネタ元はここ(Introducing JDesktop Integration Components, Part 2)
URLリンク(today.java.net)
JDICとSaverBeansの紹介記事
108:デフォルトの名無しさん
04/12/05 21:46:10
攻略Jakarta Commons
たなか ひろゆき (著)
URLリンク(www.amazon.co.jp)
この本ってどうよ?
109:デフォルトの名無しさん
04/12/05 23:45:48
>>108
マジレスしとくと、おれは良い本だと思ったよ。仕事で重宝している。
110:デフォルトの名無しさん
04/12/10 00:44:19
その本はかなりいい本だよ
111:デフォルトの名無しさん
04/12/13 11:27:50
総攬するにはかなり良い本。
112:デフォルトの名無しさん
04/12/24 15:56:37
ja-jakarta㌧㌦?
113:デフォルトの名無しさん
04/12/25 05:05:05
>>112
ああ、そういえばとんでたらしいな。
114:デフォルトの名無しさん
04/12/25 10:16:57
Commons XMLIOての見かけたんだけど、何がうれしいんだろう・・?
115:デフォルトの名無しさん
04/12/26 17:57:33
WinXPSP2な環境なのですが、
Apache2のインストール時にサービス登録でエラーになってしまいます。
回避方法はありますでしょうか?
116:デフォルトの名無しさん
04/12/26 20:40:06
>115
あなたの行くべき場所は以下の板のどこか。ここではない。
URLリンク(pc5.2ch.net)
117:デフォルトの名無しさん
05/01/03 01:17:25
. k. m ktyr
aeoe. oooo
118:デフォルトの名無しさん
05/01/03 15:58:09
かもーん。
>>115
exeやmsi形式ではなく
zip形式のApacheを導入してしまえ。
そもそもどんなエラーメッセージがでたのかわからなければ
答えようがない。
119:デフォルトの名無しさん
05/01/13 11:04:34
コマンドライン(正確にはemacs)から ant + junit でユニットテストをしています。
ソースツリーの中のすべてのテストクラスを動かすときは、
・test とかいうターゲットを作る
・その中で <batchtest> タスクを使う(結果は <junit-report> タスクで html に吐いている)
・コマンドラインから、 c;\>ant test みたいな感じで実行
ってやってますが、全部のテストクラスを動かすと時間がかかるので、
テストクラスをひとつだけ動かしたいときがあります。
その場合、 <test name="jp.co.**.**.HogeTest" > みたいな感じで
テストクラスを指定しますが、これだと毎回 build.xml に書き込まないと行けません。
ant test HogeTest みたいに
コマンドラインの引数を渡して実行することは出来ないでしょうか?
ant の場合、ant test HogeTest とすると、
test ターゲットを実行して、次に HogeTest ターゲットを実行しようとしますよね?
120:デフォルトの名無しさん
05/01/13 11:39:55
>>119
ターゲット
<target name="test">
<junit>
<test name="${junit.target}"/>
</junit>
</target>
実行
ant -Djunit.target=HogeTest test
これでどうでしょう?
ところで、折角emacs使ってるんだし、ant実行するのにコマンドライン戻るのももったいないので、
emacs-lisp使ってemacs内でant実行できるようにしたらどうでしょう?
antじゃなくてmakeでのやり方がここに載っていますが、
URLリンク(homepage3.nifty.com)
URLリンク(homepage3.nifty.com)
これを参考にすればant用のが書けるはずです。
121:119
05/01/13 14:44:38
> ところで、折角emacs使ってるんだし、ant実行するのにコマンドライン戻るのももったいないので、
> emacs-lisp使ってemacs内でant実行できるようにしたらどうでしょう?
はい、>>119 ではあのような書き方をしていますが、実際にはemacsからantを呼んでいます。
私の emacs は、>>120 で教えていただいたような特別な elisp は入れていなくて
(JDEE とかは入れているけど)
.emacs で M-x compile の初期値を
ant.bat -emacs -find build.xml
にして、C-c c に M-x compile を割り当てて、
java モードの時は C-c c でコンパイルしています。
>>120 で教えていただいた方法だと、-Djunit.target=HogeTest test
とタイプするのが面倒だなと思いましたが、M-x compile は前回入力した
項目を覚えているから、それほど苦ではないかな。
>antじゃなくてmakeでのやり方がここに載っていますが、
>URLリンク(homepage3.nifty.com)
>URLリンク(homepage3.nifty.com)
>これを参考にすればant用のが書けるはずです。
どうもありがとうございます。
やってみます。
122:デフォルトの名無しさん
05/01/15 12:19:31
>>115
亀レスだけど、前IISが動作してるPCで、IIS止めるの忘れてインストールしたら同じような現象になったよ。
サービス止めてからインストールし直したら直った。
もしIIS入れてないなら、XPのSP2がなんか悪さしてるのかもね。
123:デフォルトの名無しさん
05/01/16 02:13:08
solaris8上でvelocity.logを自作シェルスクリプトでローテートさせたいのですが、
サーバを再起動せずにログをmvするという単純なフローを考えています。
このやりかたで大丈夫かどうか教えてください。
124:デフォルトの名無しさん
05/01/17 15:03:00
mvするってことは(同一ファイルシステム上なら)rename(2)する、つまり
ディレクトリからファイルを指す名前を変えるだけですよね。
ログを開きっぱなしで追記していくなら、ネイティブコードレベルでは、
openしたときに確定したファイルディスクリプタ(ファイル名は既に無関
係)に対してwriteしていくだけなので、それだけではそのまま新しい名
前のファイルに書き続けることになるような気がします。
書く度にログをオープン/クローズするならmvするだけでよいハズ。
125:デフォルトの名無しさん
05/01/17 20:48:15
Apache Web Serverは再起動しなくちゃダメだよね。
他は大体大丈夫のはず。
126:デフォルトの名無しさん
05/01/19 09:31:49
>>120
そのやり方に味付けをするとすれば
ドメインパッケージ名があるとき、
パッケージ名の一部はコード内に書いたほうがよさげ。
うちはEclipse + Ant を使ってしまっているから
そんなことをする必要性が感じないのだ~
127:デフォルトの名無しさん
05/01/23 01:48:03
いい解説ページってないですかね
validator使いたい
128:デフォルトの名無しさん
05/01/23 02:09:25
イベント関係のAPIをまず勉強してみたいのですが、どの辺りがよろしいのですか?
あと、これのライセンスは現状で確定ですか?使えるなら6ヵ月後のプロジェクト
の試作品をこれで作ってみたい。
129:デフォルトの名無しさん
05/01/23 02:09:26
「攻略 Jakarta Commons」という本は、Commons解説本として良い本だと思う。
130:デフォルトの名無しさん
05/01/23 02:10:33
>>128
これってどれだよ。
131:デフォルトの名無しさん
05/01/23 10:18:46
イベント関係じゃ何がなんだか
これも何かわからんし
こんなPMこわひ
132:デフォルトの名無しさん
05/01/23 20:22:14
>>128
イベント関係ですか。それならActionListenerが最強です。
ライセンスもSUNが握っていますが、あなたがActionListenerを使うだけにおいては何ら問題ないです。
133:デフォルトの名無しさん
05/01/23 22:26:18
最近イベントで流行ってるAPIといえばEJB3じゃねぇか?
次のカンファレンスでもEJB3の話あるし、どのイベントでもEJB3とりあげてる。
134:デフォルトの名無しさん
05/01/23 23:12:12
最近のイベントのライセンスはどうなんだろうね。
135:デフォルトの名無しさん
05/01/25 14:26:24
Ant1.6.2のCvsChangelogタグのバグにやられた。
prevrevisionが全然出てこなくて、「なぜだー?」と思ったら、
Bug#: 24569
summary: cvschangelog not adding prevrevision on all files
URLリンク(issues.apache.org)
こういうことだった。半年以上ほったらかしか・・・
パッチ書くのも面倒なので1.6.0に下げて対応することにした。
136:デフォルトの名無しさん
05/01/29 01:58:55
Jakarta Commons Cookbook
URLリンク(www.amazon.co.jp)
誰かこれ買った奴いる?
感想教えてちょ。
137:デフォルトの名無しさん
05/01/31 19:11:31
>129
解説本と言うよりは紹介本だと思う。
こんなことやあんなことが出来るといわれ
興味を持っていろいろ調べようという気にさせてくれる。
解説本としては紙幅が足りない感じ。
とはいえ良い本だと思う。
>128
Jakarta ではないけれど、Spring の ApplicationListener とか。
138:デフォルトの名無しさん
05/02/09 16:39:51
TomcatのセッションIDの桁数ってどう設定するのでしょうか?
139:デフォルトの名無しさん
05/02/11 12:23:32
>>138
え?そんなんできんの?俺も知りたいなー。
140:デフォルトの名無しさん
05/02/11 13:14:27
>>138
え?Tomcatってcommonsだったか?
141:デフォルトの名無しさん
05/02/11 16:50:04
>>140
分かりづらいつっこみだな
142:デフォルトの名無しさん
05/03/05 14:24:40
RandomStringUtils萌え
143:デフォルトの名無しさん
05/03/17 16:10:33
javaのjsp/サーブレットの参考書を読んでいます。
Apacheの設定でNetwork DomainとServer Nameにlocal hostと入力し
Apacheの動作確認をしたところ、ブラウザを開き
URLリンク(localhost) または、
http://(コンピュータ名、ipアドレス)と入力するとあります。
すると、ドットゲートサービスと出てユーザ名とパスワードがでました。
設定した覚えがないので、進めることができません。
OS:xp Apache:1.3.24 メーカー:NECです。
わかるかたお願いします。
144:デフォルトの名無しさん
05/03/17 17:01:37
NECが入れてるapacheの設定に関することのようなので、
NECに聞いてください。
145:デフォルトの名無しさん
05/03/17 17:06:55
訳: メーカーは関係ないだろう、と
146:デフォルトの名無しさん
05/03/17 18:01:14
いや、apacheプリインストールで「ドットゲートサービス」
なるものを提供しているNECのパソコンがあるようなので(ぐぐった)、
それのことかな、と。
147:デフォルトの名無しさん
05/03/17 18:13:35
あーすまん勘違いでした。
>143
まあ適当に飛ばしてtomcat単体で動かせば良いと思う
148:143
05/03/17 19:50:04
了解!飛ばしてやってみます
149:デフォルトの名無しさん
05/03/17 20:40:10
>>146
ネタかと思ったら、本当にあるのね。
Webアプリケーションの開発とかに使うのなら、一度削除してから
自分で再インスコするほうがよさそうだけど。
150:デフォルトの名無しさん
05/03/20 08:39:26
つか、初心者用の本で、わざわざ最初にApacheとの連携させる意味がわからんな。
151:デフォルトの名無しさん
05/03/24 11:02:01
前スレ(?)をHTML化してもらいました.
《The Jakarta Project》
URLリンク(ruku.qp.tc)
152:デフォルトの名無しさん
05/03/31 23:31:18
antの質問いいですか?
153:デフォルトの名無しさん
05/03/31 23:31:41
antってなんですか?
154:デフォルトの名無しさん
05/03/31 23:32:03
山は死にますか?
155:デフォルトの名無しさん
05/03/31 23:32:24
川はどうですか?
156:デフォルトの名無しさん
05/03/31 23:33:14
>>152
叔母です。
157:デフォルトの名無しさん
皇紀2665/04/01(金) 11:43:27
豊はなんでしょうか?
158:デフォルトの名無しさん
int 2ch =5年,2005/04/02(土) 15:20:07
BigDecimalのUtilってないかな?
159:デフォルトの名無しさん
05/04/20 16:28:13
荒れてますね・・・
Jakarta Commons Daemon
URLリンク(jakarta.apache.org)
を使ってる人いますか?使い勝手とか感想が聞きたいんですけど・・・
160:デフォルトの名無しさん
05/04/20 22:22:41
>>159
仕方がないとはいえ、Cで作ったライブラリを一部使うので、jarがあればどこでも使えるというわけには
いかない。狙い所はいいのに、なんとかならんものか。
161:デフォルトの名無しさん
05/04/20 22:54:57
SWTとかJDICみたいに、それぞれのOS用のバイナリがあればいいだけじゃない?
162:デフォルトの名無しさん
05/04/21 05:56:02
>>160
OSに深くかかわる部分だしある程度は仕方ないね
163:デフォルトの名無しさん
05/04/21 22:01:27
Windows だけのことを考えるなら
JavaService の方が使い勝手は良さそう。
164:デフォルトの名無しさん
05/05/18 20:54:39
保守
165:デフォルトの名無しさん
05/05/19 07:27:22
Apache FtpServer
URLリンク(incubator.apache.org)
誰かつかったことある人います?
使用感とか教えていただけると助かります。
166:デフォルトの名無しさん
05/05/24 10:43:27
torqueって使えそう?
ほかのフレームワークとかもだけどDBを完全に正規化しておくとかVIEWを作ってあげないとだめぽなのかなぁ
167:デフォルトの名無しさん
05/05/24 10:55:12
>>166
そんなもまいにこのスレを。
Java⇔RDBのMapping-Frameworkを語るThre Vol.3
スレリンク(tech板)
168:デフォルトの名無しさん
05/05/24 11:01:27
>>167
㌧です。
早速のぞいてみます。
169:デフォルトの名無しさん
05/05/24 12:22:40
Torqueはメイン開発者がお亡くなりになったので、開発がほとんど進んでない。
HibernateかS2DaoかEJB3待ちか、最近の選択肢は3つ。
170:デフォルトの名無しさん
05/05/24 12:33:03
O/R-Mappingならそれでもいいけど、
手軽にSQL-Mappingということなら、iBATISも選択肢に入ると思われ。
171:デフォルトの名無しさん
05/05/28 15:46:48
質問です。
Commons NetのSMTPClientでsendMessageData()メソッドを使ってメッセージ送信する際、
文字エンコーディングを指定するにはどうすればいいですか??
何か参考になるサイトでもいいのでどなたかよろしくお願いします m(__)m
172:デフォルトの名無しさん
05/05/28 22:51:05
age
173:デフォルトの名無しさん
05/05/29 09:06:17
>>171
俺はJavaMailの方でやっているけど、いずれこっちに変えようかと思っていたので調べてみた。
Commons NetのSMTPは、シンプルにSMTPというプロトコルを実装しているだけなので、MIMEは全然ノータッチみたい。
エンコーディングを自分でした後、それをsendMessageData()するという感じだと思う。
メール送信するだけならCommons EMailというのがあるけど、今のところCVSからしか落とせないみたい。
JavaDoc見る限り EMail.setCharset()というのがある。EMailクラスを継承したMultiPartEmailクラスがあるからこれを使うみたいだけど、
試してないからホントにちゃんと使えるのかどうかは知らない。
Commons EMailがCommons Netを使っているのかどうかも不明。
もし試してみるなら、結果を報告してくれたらうれしい。
174:デフォルトの名無しさん
05/05/29 16:29:36
POIでExcelシートをワークブックの任意の位置に移動するメソッドはありますか?それっぽいのがみつかりません。
175:デフォルトの名無しさん
05/05/29 16:35:59
シートの順番の入れ替え?
176:デフォルトの名無しさん
05/05/30 02:00:15
>>173 横から報告してみる。
# いま、Jakartaにつながらない。
半年前使ったときには、SMTP はJavaMail を使ってました。
MultiPartには対応していていました。
そのときは、charsetがまともに指定できてなかったと思います。
177:JavaMailプロ
05/05/30 05:07:22
>>176の件だが、
(1) javax.mail.MimePart#setText(String text, String charset)を使えば、
"text/plain"限定で文字セット指定ができる。
(2) javax.mail.Part#setContent(Object body, String mimeType)を使えば、
任意のMIMEタイプ/文字セット指定ができる。
エンコーディング指定には javax.mail.Part#setHeader("Content-Transfer-Type", "BASE64")等を指定。
ただし、(2)では実際のエンコーディング処理は内部的に
JAF(Java Activation Framework)のDataHandlerクラス (javax.activation.*)が呼び出している。
もし、デフォルトでインストールされているDataHandlerが、期待するエンコーディングをしない場合は、
新しいエンコーディング用にDataHandlerとDataSourceのサブクラスを作成して、
JAFのプロパティ・ファイルに登録してやる必要がある。
・・・JavaMailは、「Javaのメール・クライアントを作ってPCデスクトップを攻略」するためのAPIだったんで、
メール・クライアント以降の新しいニーズ(例えばSOAPやMQ)では使いにくいかもしれない。
以降、JavaMailプロの独り言
・・・その昔、JavaMailがまだβ版だった当時、
日本語メール慣習への適合度や、バグ含有度を調べる余裕がなくて、
JavaMail APIをフルスクラッチで書いて、
その上にメール・クライアントを構築した事を思い出した。
(本当はメッセージ・キューやらワークフロー・エンジンも作るって言われたから
基礎からカッチリ作ったんだけど・・・未実現。
つか、そのうちJMSやらSOAPが出てきた。俺の仕事ってつくづくProgress Software近辺と被ってるのな)
178:デフォルトの名無しさん
05/05/30 06:31:08
ちょっと時代の流れとずれてるために、努力が日の目をみない人ですか?
179:デフォルトの名無しさん
05/05/30 08:28:36
なんだよてめぇ、朝から喧嘩うってんか
180:177訂正
05/05/30 08:57:05
× ただし、(2)では実際のエンコーディング処理は内部的にJAFのDataHandlerが呼び出している
○ ただし、(1)(2)の実際のエンコーディング処理は、MIMEタイプに応じてJAF APIのDataHandlerが処理してる
181:デフォルトの名無しさん
05/06/03 02:08:39
>>175
そうです
182:デフォルトの名無しさん
05/06/03 02:15:18
頑張れ!目的不明な単発質問くん!
183:デフォルトの名無しさん
05/06/03 02:54:43
質問のフリ荒らし:書くことはないがスレの流れが気になって仕方なく
とりあえずスレ違いにはならないとおもわれる範囲で
質問・同意を得る形式でレスをすること。
答えがどうあろうとレス稼ぎが問題なので単発で終わることが多い。
184:デフォルトの名無しさん
05/06/04 11:59:28
Writerからどうやってエンコーディング指定できるOutputStreamWriterに変換すればいいですか?
185:デフォルトの名無しさん
05/06/04 12:18:02
>>183
レス稼ぎと荒らしの関連性が分からん。
186:デフォルトの名無しさん
05/06/05 11:37:07
>>185
無視しろ。183はコピペ荒らしだ。
187:デフォルトの名無しさん
05/06/11 13:14:35
Commonsじゃなくて申し訳ないけど、Luceneって何て読むの?
すっげー気になったもんで。
188:デフォルトの名無しさん
05/06/11 13:19:18
>>186死ね
>>187 ル・シ~ン!!! (銭型警部の声で
189:デフォルトの名無しさん
05/06/11 14:15:25
ルセーヌだよ。
190:デフォルトの名無しさん
05/06/11 14:39:45
エルセーヌだよ。
191:デフォルトの名無しさん
05/06/11 21:41:21
URLリンク(d.hatena.ne.jp)
192:デフォルトの名無しさん
05/06/12 00:33:15
>>188
それは「アルセーヌ・ルパンIII世」
193:デフォルトの名無しさん
05/06/12 00:35:23
銭型警部:「ヤツはとんでもないものを盗みました・・・それは貴女のデスクトップ検索情報です・・・」
194:デフォルトの名無しさん
05/06/12 01:12:29
「ところで、今、こんな顔(σ・д・)したやつこなかったか?」
「ばかもーん、そいつがルパンだ、追え~」
195:デフォルトの名無しさん
05/06/12 02:36:06
>>194
ルパンごっこ?
196:デフォルトの名無しさん
05/06/12 10:51:31
1.コンビニでアンパンをひとつ買い、
「インターポールの銭形です。 ルパンを追っているので見かけたら連絡をお願いします。」
と言って立ち去る。
2.すぐにドタバタ戻ってきて店員に、
「今わしを見かけなかったか?」
と怒鳴りつける。
3.「今あなたアンパン買って・・・」
「ばかもーん!そいつがルパンだー!!」
と言って、またドタバタと出て行く。
197:デフォルトの名無しさん
05/06/12 15:17:38
で、アンパンマンはいつになったら出てくるんだ?
198:デフォルトの名無しさん
05/06/12 15:35:31
「ところで、今、こんな顔(σ・д・)したやつこなかったか?」
「ばかもーん、そいつがアンパンマンだ、追え~」
199:デフォルトの名無しさん
05/06/16 01:30:59
VelocityToolsで
tools.view.servlet.error.template( = Error.vm)
tools.view.servlet.layout.directory( = layout/)
tools.view.servlet.layout.default.template( = Default.vm)
この設定を全て無効化することはできないのか?
test.html?layout=./
このレイアウトのパラメータも無効化したい。
200:デフォルトの名無しさん
05/07/26 11:35:15
公式サイト㌧㌦?
201:デフォルトの名無しさん
05/07/26 11:38:34
apache.org 全滅?
202:200
05/07/26 12:34:01
復帰したみたい。
203:171
05/08/02 01:02:12
>>173
大分遅くなりましたが丁寧な解答ありがとうございます。
Commons EMailはまだ試していないのですが、SMTPClientで日本語を送信できるようになりました。
String encodedSubject = new String(Base64.encodeBase64(subject.getBytes("Shift_JIS")));
Writer writer = smtp.sendMessageData();
if (writer != null) {
writer.write("Subject:=?iso-2022-jp?B?" + encodedSubject + "=?=\n");
writer.write("From: " + from + "\n");
writer.write("To: " + to + "\n");
writer.write("MIME-Version: 1.0\n");
writer.write("Content-Type: Text/Plain; charset=\"iso-2022-jp\"\n");
writer.write("Content-Transfer-Encoding: base64\n");
writer.write(new String(Base64.encodeBase64(message.getBytes("Shift_JIS"))) + "\n");
writer.close();
smtp.completePendingCommand();
}
Base64のエンコーディングにはCommons Codecを使いました。
これで一応日本語が化けずに送れてます。
もっともE-Mailや文字コード周りの知識があまりないので、作法的にはあやしいかも知れませんが・・・^^;
204:デフォルトの名無しさん
05/08/07 00:45:50
DbUtilsは開発してんの?
205:デフォルトの名無しさん
05/08/09 20:32:26
BeanUtilsが便利すぎる
現場で使ってる奴がほとんどいないけど・・・
206:デフォルトの名無しさん
05/08/09 22:58:23
>>205
BeanUtilsは型やプロパティ名が実行時解決なので、
コンパイル時にチェックできないバグが増えるから気をつけてね。
207:デフォルトの名無しさん
05/08/10 12:08:05
それは困憊る
208:デフォルトの名無しさん
05/08/10 13:10:11
直接使ってなくても他のフレームワークが間接的に使ってること多いね。
何するライブラリなのか分かってないけど
リフレクションでウハウハするための何か?
209:デフォルトの名無しさん
05/08/10 20:01:42
Strutsとかhibernateはばりばり使ってると思う
ソースは見てないけど、xmlから読み込むなら
やっぱりリフレクトでウハウハかなとは思う
210:デフォルトの名無しさん
05/08/10 22:17:10
つーかBeanUtilsってStrutsから派生したんじゃなかったけ?
確かにウハウハだが、なんでもかんでもMapに詰め込んでってのは
エレガントではないな。 まあただの宗教論争だが。
211:デフォルトの名無しさん
05/08/10 22:17:25
他のフレームワークやライブラリが間接的に使ってる分にはいいんじゃない?
一応テスト・デバッグ済みってことになってるし。
リフレクションは重いけどね・・・
Hibernateはリフレクション使ってないよ。使ってたらもっと重いフレームワークになる。
Strutsはバリバリ。カスタムタグとか、リクエストパラメータをActionFormにセットするところとか、
DynaActionFormとか。BeanUtilsはもともとStrutsの一部だったモノだしね。
212:デフォルトの名無しさん
05/08/10 23:03:40
BeautilsはcopyPropertyメソッドが素敵だから使ってる
ところでhibernateってなんて読むの?
未だに分からない
213:デフォルトの名無しさん
05/08/10 23:37:38
ハイバーネートと読んでみるテスト
214:デフォルトの名無しさん
05/08/11 00:36:12
「はいべるなーと」
215:デフォルトの名無しさん
05/08/11 00:38:08
>>211
リフレクション使ってないけど、バイトコード操作なんていうコンパイル時にチェックできないバグがもっと増える仕組み使ってるがね。
216:デフォルトの名無しさん
05/08/11 01:10:58
>>215
いいんじゃない?テスト・デバッグはHibernate開発者の責任だし。
自分でそういう仕組みを使うときは気をつけてね、ってことで。
217:デフォルトの名無しさん
05/08/11 01:13:28
リフレクションもね。
フレームワークとか作るんじゃなくて普通の業務ロジックのためにバイトコード操作してたらブッコロスね。
218:デフォルトの名無しさん
05/08/11 22:21:47
/;:;:;:;:;:;:;:;:;::!!''" !;:;:;:;:;ヽ
|;:;:;:;:;:;:;:!'" ヽ;:;:;:;ヽ
|;:;:;:;i''" i!;:;:;:;|
|;:;:;:;| ヾ;:;:;:|
|;:;:;:;| ,,,;;:iii;;;;; ,.-==--、. `!;:;|ヽ
〉;:;:| ,.-''" ̄ ̄ ̄`ヽ⌒| --。、-、 ヽ-`' | 綺麗な顔してるだろ
i `u i -‐'"ヾ'" :: ::! : | ノ 落選するんだぜ、これ。
i | ノ ヾ、___ノ ::|
| | ヽ、__,.-i i 、 : :|
| | : : '" `~ー~'" ヽ : : ::|
`i ヾ ' ____ ;: ;: :|
\ -‐'''"~ ̄ ̄ ̄ ̄ ; ;: :/-
ヾ: : . ` " " " ,./
219:デフォルトの名無しさん
05/08/11 22:23:53
Strutsとかhibernateはばりばり使ってると思う
ソースは見てないけど、xmlから読み込むなら
やっぱりリフレクトでウハウハかなとは思う
220:デフォルトの名無しさん
05/08/11 23:04:53
コピペしなくいいよ。明らかに釣りだろ。
221:デフォルトの名無しさん
05/08/12 00:06:12
リフレクトってどんぐらい重くなるんだ?
まあ原理的には重そうなんだけど開発環境じゃそんな体感できないし。
どういう状況までなら使えるのか線引きが出来ない。
で、結局デバック用のBeanのフィールドのログはきぐらいにしか使ったことない。
222:デフォルトの名無しさん
05/08/12 00:12:03
>>221
テーブル5つ程度の簡単なアプリをローカルのPCで動かすだけで
体感できるほど重くなるよ。
Beanのsetter/getterを呼ぶ箇所を全部BeanUtilsを使うように書き換えてみるとわかる。
書き換えるクラス数も10数個程度。
リフレクションは、重いという弊害の他に、ダウンキャストの危険性も多い。
Mapオブジェクトと同じように、せっかくJava言語に用意されている
「型安全性」を無視してしまうから個人的に好みではない。
223:222
05/08/12 00:12:51
> リフレクションは、重いという弊害の他に
BeanUtilsは、に訂正してくれ。
224:デフォルトの名無しさん
05/08/12 03:07:36
BeanUtils,Betwixtは超便利
Lang,Collections,IOは常用
Codec,HttpClientはたまに
225:デフォルトの名無しさん
05/08/16 12:27:46
>ところでhibernateってなんて読むの?
普通にハイバネートで良いかと。一般動詞っすよ。
>リフレクトってどんぐらい重くなるんだ?
使い方次第としか。
何かのラッパークラスのソース自動生成とか、
コストのかかる処理(接続とかインスタンス生成とか)の一部で使う分には
全く問題にならんレベルだと思うし。
>224
io, logging は常用
dbcp,pool,collection,beanutilsは常用ライブラリ(Springとか)が間接的に使用
digester,betwixtは以前常用してたけどxmlbeansに移行してしまった今日この頃。
commons じゃない jakarta スレってないんでしょうか。
velocity くらいしか使ってないけど。。
226:デフォルトの名無しさん
05/08/17 00:00:00
>>225
このスレはとっとと終わらして、Jakarta スレたててくれ。
1年弱で 200 ちょっとしか消費してないから、使い切るのは
4年後か。
227:デフォルトの名無しさん
05/08/17 23:45:07
>>224,225
IOって便利なの?
あおってるわけじゃなくて普通に知りたい。
オススメ機能教えてよ。
そんな常用するほど使えそうなの見つからない。
まあ名前で使えそうなのさっと探しただけだけど。
closeQuietlyとかソースみたら何じゃそりゃって感じだし。
228:デフォルトの名無しさん
05/08/18 09:37:08
つか closeQuietly しか使わないけど。
あれ使わないとなると
・毎回try-catchのネストを記述する。
・自作ライブラリに closeQuietely 相当のものを用意してそれを呼び出す。
のいずれかですよね。
前者は保守性・視認性・手間の全ての面からして
個人的にはありえないと思ってます。
後者は他人がコード読んだ時を想像するに、
俺様関数にぶち当たって関数のコード読む手間と
読み終わってから「結局commons-ioのアレじゃねえか。」
と溜息つかせる事を考えれば、あんま嬉しくない気がします。
229:デフォルトの名無しさん
05/08/18 23:36:28
closeQuietelyだけだったらさすがに環境構築のたびにクラスパス通して
インポートしてってよりは自分とこの共通クラスにコード書くね。
だって誰が書いたってああなるでしょ。
実際ほとんど同じのcommons自体知る前に書いてたし。
結局commons-ioかよとか思わないと思うけどね。
別にたいした手間じゃないんだけどクラスパスが無駄に多いのは好きじゃない。
まあ好みの問題だと思うけど。
230:デフォルトの名無しさん
05/08/19 00:08:16
ライブラリ系を書いてると、いろいろ使うけどな。
だるいコードを書かなくてすむ。
IOUtils.toString(InputStream)
CopyUtils.copy(InputStream, OutputStream)
FileUtils.copyFile(File, File)
Ant が中で使ってるクラスも組み合わせるとかなり楽。
org.apache.tools.ant.taskdef の Copy クラスとか Property クラスとか。
タスク名がクラス名になってて、excute メソッド呼ぶだけ。
231:デフォルトの名無しさん
05/08/19 02:48:30
>>229
環境構築のたびにクラスパスったって、今日ビ、IDEでプロジェクト作成したときに登録するだけだろ。
importなんか勝手に書いてくれるし。
232:デフォルトの名無しさん
05/08/19 09:51:56
> 実際ほとんど同じのcommons自体知る前に書いてたし。
こういう勘違い発言をする奴がいまだにいるのか。
フレームワーク・ライブラリ・デザインパターンがなぜ存在するのかを考えろよ
233:デフォルトの名無しさん
05/08/19 11:55:20
俺は228ですが。
>229
プロジェクト作るたびにそのプロジェクトの Utility クラスに
closeQuietely 相当のコードを記述するんですか?
毎回同じ事を書くのに?
俺様.jar にまとめてしまった方が100倍マシだと思いますけど。
とても好みの問題だとは思えないです。
毎回同じクローズ処理
↓
うぜえから関数化(今このあたり)
↓
毎回同じ関数書いてるから俺様.jar作成
↓
気がつけば当たり前のようにみんな同じことやってる
↓
車輪の再発明は時間の無駄だから commons-io にしてしもうぜ
234:デフォルトの名無しさん
05/08/19 12:04:27
下の三行はまったく必然性は無いだがなw
closeQuietelyしか使わない前提で話を進めているようだから、
メソッド一つのために外から拾ってきたライブラリを入れのか普通?
jarがいくつになれば気が済むんだと問いたい問い詰めたい。
235:デフォルトの名無しさん
05/08/19 12:26:30
毎回テスト・デバッグするより信頼性のあるライブラリを使う方が数百倍まし。
毎回他人の俺様コードを見るより「いつものライブラリ」を使う方が数百倍まし。
236:デフォルトの名無しさん
05/08/19 12:36:07
あっそう。拾ったライブラリはテストしなくても信頼できるんだ。ふーん。
目当てのメソッド以外のクラスやメソッドが使われた時のテストや管理のリスクは無視か。
趣味で触ってるやつならともかく、人のコード見ないで出来る仕事ってそうはないと思うがな。
>jarがいくつになれば気が済むんだと問いたい問い詰めたい。
これについでの回答は?
おめぇの趣味で一々jar入れてたら100や200個になりかねないから、
採用に当たってのポリシーが必要なわけだが、
お前が使いたいメソッドが1個あるから入れろってか?
俺がリーダーなら帰れって言うな。
237:デフォルトの名無しさん
05/08/19 12:59:23
公開ライブラリについての見解は、場所(人)によって異なるから
>>236 のような視点では結論は出ないよ。(意見を否定しているわけではない。念のため。)
ただ、俺様.jarはいただけない。その点は >>235 に同意。
ひどいPGだと、よそで使ったコードをそのまま持ち込もうとしたりとか。
そういう意味でもやばい。
> jarがいくつになれば気が済むんだと問いたい問い詰めたい。
必要とあらば仕方ないんじゃね? IDE使えば無問題だし。
238:デフォルトの名無しさん
05/08/19 13:02:27
たとえ一つでも誰もが使うメソッドがある。
ってのは採用に値しないのか?
これはもう釣りかも分からんね。
239:デフォルトの名無しさん
05/08/19 13:09:13
> あっそう。拾ったライブラリはテストしなくても信頼できるんだ。ふーん。
バカか?テスト・デバッグはライブラリベンダの役割だ。
それとも、おまえのところは初めて使う製品はすべて自社でテストし直すのか?
>人のコード見ないで出来る仕事ってそうはないと思うがな。
それは当たり前だが、少なければ少ないほどいいのがわからないのか?
毎回同じコードを書き直すほうがいいのか?
> >jarがいくつになれば気が済むんだと問いたい問い詰めたい。
いくつになっても結構。
なぜ増えると困るのかね?もしかして全部手作業でデプロイしてるとか?w
240:237
05/08/19 13:43:37
一つ言わせてくれ。
>>237 の目欄におかしなものがくっついてるが、ただの消し忘れだ。
ごめんなさい。orz
241:デフォルトの名無しさん
05/08/19 14:03:08
>バカか?テスト・デバッグはライブラリベンダの役割だ。
自社で使ってるライブラリ(そっちの言う俺様jar)とかならテスト済みだから、
毎回テストが必要って言うお前の主張がおかしいって話だ。
>いくつになっても結構。
ど素人ってのがよく分かったから、今度人のプロジェクトに参加する時に
「このメソッドが使いたいから、このほげほげjarをプロジェクトに入れてね」と頼んで見な。
お前が入れるのは別に反対はしないが、
そうしなければならないというお前の主張が常識と思うならそりゃ大間違いだな。
>たとえ一つでも誰もが使うメソッドがある(ry
ないな。外部ライブラリーの使用のリスクについてまったく無知でなければそんなことはしない。
jarが本当に100個になっても、そのバグ情報やバージョン、ドキュメントなどを管理できる
スーパープロジェクトリーダーならともかくな。
242:デフォルトの名無しさん
05/08/19 14:22:38
> 自社で使ってるライブラリ(そっちの言う俺様jar)とかならテスト済みだから、
はぁ?
↓Jarを入れないって話じゃなかったのか?
> jarがいくつになれば気が済むんだと問いたい問い詰めたい。
243:デフォルトの名無しさん
05/08/19 14:24:32
>>241
で、おまいはApacheのプロダクトを使うときは毎回自社ですべてのコードをテストし直すのか?
244:デフォルトの名無しさん
05/08/19 14:28:50
> 「このメソッドが使いたいから、このほげほげjarをプロジェクトに入れてね」と頼んで見な。
俺はどっちかというとアーキテクトの立場だから
「このライブラリを使いましょう」という俺の意見はほぼ通ってるよ。
245:デフォルトの名無しさん
05/08/19 14:32:43
話がこじれてる理由がわかったよ。
>>227=>>229=>>234=>>236=>>241はひとつのメソッドが使いたいだけなのに、
その他のメソッドがついてくる(はずせない)のは問題ないのかと言ってるのね。
他の香具師らが言ってるメリットと比べてこっちの問題のが大きいだろと。
その問題ってのが当たり前だの常識だのって言葉でくくられてるからかみ合わないわけね。
実際にリスク見積もって判断しろよって>>227(略)は言いたいんだよな?
それならわかるわ。
不謹慎だが、宮城の地震で屋根が落ちたプールの話と同じ構造だな。
業者に丸投げ(他所のライブラリをチェックせず使う)すると安く出来上がるが、
安全であるかどうかの確認がしにくくなる。
>>239のいうライブラリのテストデバッグは~ってのはまさにこの構図。
最終的な客に対する責任は利用するコードを書いた側に出てくるんだぜ?
断じて、ライブラリを提供した側ではない。
通常は、ライブラリを売ってるところが提供した範囲での責任を取ってくれる
(ライブラリ利用側が客に取る責任よりは小さいわな)、オープンソースだと誰が責任をとる?
もしかしたら、ライブラリのバグのせいで、もまいのシステムが人を殺すかもしれないよ?
246:デフォルトの名無しさん
05/08/19 14:35:07
話が大きくなり杉。
ライブラリ必要なら入れましょう。
その方が楽なの当たり前。
ただたった一個のメソッドのために入れるのは賛否別れる。
個人的には開発の規模にも因るけどたぶん入れない。
しかもcloseQuetlyじゃね。
結論は程度の問題でしょ。
247:デフォルトの名無しさん
05/08/19 14:46:48
>>234=>>236=>>241です
きれいにまとめてくれてありがとう。
>244
jarを入れるのには>245のほかにドキュメントの提供・バージョン・他のライブラリとの相性があるから、
同じアーキテクトの立場ではあるが、リスクを考えるとやはり慎重になるな。
248:デフォルトの名無しさん
05/08/19 18:31:40
拾ってきたライブラリ云々に関しては、Commonsだけは別格じゃないの?
少なくとも定番化してるものに関しては拾ってきたとかいうレベルの信頼
性ではないと思う。
もしCommonsを信頼できないとするなら、俺は同僚が書いたコードの方
が遥かに信頼できないよ?w
そして、同僚は俺の書いたコードを信頼できないと思うだろうorz
バグがないとは言わないし、テストに漏れがないとも言わないが、それは
結局誰が書いても同じ事だし?
それなら、より多くの人に触れられ検証される事になるCommonsの方が
信頼できる。
249:デフォルトの名無しさん
05/08/19 21:07:59
commons使って痒い所に手が届かなかったら自分たちでコードを作れば
いいと思うけど・・・
オープンソースにとやかく文句いっても仕方ないでしょ
いっても使ってるのは、loggingとBeanUtilsだけなんだけど
ioも使えるのか・・・ちょっとやってみよう
ところでDbUtilsとCollectionってどうなの?
250:デフォルトの名無しさん
05/08/19 21:53:15
なんかまた話がすりかわってるだろ。
いつの間にかcommonsのバグの話になってるし。
一個でも使えそうなメソッドがあれば
オープンソースを使わなければならない。
そうしないやつはオープンソースをわかってないし
作ってるシステムもぐちゃぐちゃって感じだね。
commonsかなり気に入って使ってるけど
さすがに一個のメソッドで入れたりしない。
なんかオープンソース好きっていうか宗教っぽいな。
251:デフォルトの名無しさん
05/08/19 23:13:11
バグの話じゃないとわかってても一応>>248みたいな奴には言っておきたい。
commons-langとかでも普通にありえないバグあるから。
バグじゃなくてもパッケージごと移動とかもあるし。
バージョン上がると非推奨になってるやつもいっぱいある。
例えばだがjspでimportしてる古臭い大規模システムだったらimport直して
動作確認するだけでちょっとした人件費に飛ぶな。大人数で開発してる環境ならなおさら。
でそういう時はライブラリを問題あるとわかっててもバージョンアップしないほうが良いのかね?
commonsもオープンソースも否定しないが
当たり前に使うときは動作確認もソースのチェックもするさ。
オープンソース信者の皆さんが言う俺様コードを経由してcommons呼び出したりもする。
なんか不具合あってもそこだけ変えればすむようにな。
まあcommonsマンセーの人たちはどういうシステム作ってきたんだか。
252:デフォルトの名無しさん
05/08/19 23:33:40
>>248
その「信頼」の根拠をどこにおくのかわかってるかいって話だよ。
同僚が書いたコードでも、必要なテストをパスしてるんなら今の状態でもOKなわけだし。
>>250の言うように宗教めいてるところはあるね、確かに。
253:デフォルトの名無しさん
05/08/20 00:16:01
スレ流して読んでみたけど>>232,233,235,243,248みたいな発言する奴は要注意だね。
ちょっと事情があって今回のシステムではライブラリとか追加できない
っていうと顔真っ赤にして怒り出す奴。
別にソース公開されてるんだから組み込めば良いじゃん。
オープンソースの考え方を持つのは勝手だが顧客に押し付けんな。
StringUtilsのreplaceとStringのreplaceAllの動作の違いもわかってなくて
すっぱいバグ出しちゃった奴。
ソースちょっと確認すればわかるだろ。
ちょっとしたcommonsとかにない文字列操作とかになると
そんなの出来ません!とか言い出す奴。
出来ませんじゃなくてオープンソースにありませんってだけだろ。
そんぐらい自分で作れ。
すぐに思い出したやつを書いて見た。
全部周りに実在した奴らだ。しかもオープンソース大好きってのばっか。
オープンソースを妄信的に信じてる奴が
一番オープンソースの使い方を知らないケースが多い。
254:デフォルトの名無しさん
05/08/20 00:29:36
あまりにも短絡的な決めつけをする>>253が一番の妄想野郎だな
255:デフォルトの名無しさん
05/08/20 00:49:27
>>254
いや。>>253の実例みたいな奴は間違いなく痛いだろ。
実際確かにいるし。
256:あぼーん
あぼーん
あぼーん
257:デフォルトの名無しさん
05/08/20 00:59:47
Jakarta Commonsクックブック
URLリンク(www.oreilly.co.jp)
オライリーのCommons本の邦訳が今日出るみたいだね。
258:デフォルトの名無しさん
05/08/20 09:07:55
オープンソースそのものの話は他所でやってくれ
259:デフォルトの名無しさん
05/08/20 12:20:59
>>253
> 別にソース公開されてるんだから組み込めば良いじゃん。
なにそれ。そうやってきたの?あんたには関係ないが
公開者からすりゃ、かなり気分悪いな。
で、バージョンアップしたら張りなおしか?
> オープンソースの考え方を持つのは勝手だが顧客に押し付けんな。
> StringUtilsのreplaceとStringのreplaceAllの動作の違いもわかってなくて
> すっぱいバグ出しちゃった奴。
オープンソース関係ねー。そんな奴はどうせ JDK も
ロクに分かってない。
> ソースちょっと確認すればわかるだろ。
> ちょっとしたcommonsとかにない文字列操作とかになると
> そんなの出来ません!とか言い出す奴。
> 出来ませんじゃなくてオープンソースにありませんってだけだろ。
> そんぐらい自分で作れ。
話の流れからして、おまえはリーダークラスの役割だろ?
おまえができることを、できない奴がいるのは当たり前。
誰でもひとつくらい得意なことはある。
できない奴の能力不足ではなく、ライブラリチームや担当を
編成・管理しないおまえの能力不足だ。
260:デフォルトの名無しさん
05/08/20 12:43:04
> ソースちょっと確認すればわかるだろ。
> ちょっとしたcommonsとかにない文字列操作とかになると
> そんなの出来ません!とか言い出す奴。
こんな奴が本当に居るとしたら、そもそもプログラマとして成立してないじゃん。
commonsがあればコードを書く必要がないって言うんならともかく、実際は
commonsで賄う部分よりそれ以外の部分の方が遥かに多いんだからさ。
まぁ、VBプログラマなら、コンポーネントがないからできませんって奴が居
ても不思議じゃないけどw
261:デフォルトの名無しさん
05/08/21 00:10:11
>>253
> オープンソースを妄信的に信じてる奴が
> 一番オープンソースの使い方を知らないケースが多い。
ここだけは禿同。
262:デフォルトの名無しさん
05/08/21 10:42:01
流れをぶったぎって書くが、
commons-ioといえば、commons-fileuploadの1.1devで使ってるね。
263:デフォルトの名無しさん
05/08/22 19:04:12
copyProperties を使うためだけに
commons-beanutils を追加しました。
今まで素で reflect 使って書いてたコードがかなりあるんだけど
やっぱ書き直した方が吉かなあ。
264:デフォルトの名無しさん
05/08/22 21:05:27
今までのやつがちゃんと動いてるんならいいんじゃね?
265:デフォルトの名無しさん
05/08/22 22:41:19
同意。動いてるコードを書き直すのは苦痛だ。
ただ、リファクタリングの一環として、リフレクション部分をプルアップしてみて
BeanUtilsとの置き換えが可能そうなら、置き換えてみてもいいかもしれない。
266:デフォルトの名無しさん
05/09/03 00:21:04
>>187
ルーセンスと発音していたが違うかな。
ルシーンなのか。
267:デフォルトの名無しさん
05/09/03 00:23:37
>>206
へぇ。
Java5になってからGenericsで型チェックできるようにパラメタライズされてないのかな。
268:デフォルトの名無しさん
05/09/03 00:24:53
>>212
high burn eight
普通にハイバネートと発音したい気が。
269:デフォルトの名無しさん
05/09/03 00:28:34
>>236
> あっそう。拾ったライブラリはテストしなくても信頼できるんだ。ふーん。
> 目当てのメソッド以外のクラスやメソッドが使われた時のテストや管理のリスクは無視か。
> 趣味で触ってるやつならともかく、人のコード見ないで出来る仕事ってそうはないと思うがな。
> >jarがいくつになれば気が済むんだと問いたい問い詰めたい。
> これについでの回答は?
> おめぇの趣味で一々jar入れてたら100や200個になりかねないから、
率直にMaven使えよ。
mavenのクラスパスを一つ通すだけで自動でダウンロード、自動でインストールしてくれるぞ。
270:デフォルトの名無しさん
05/09/03 00:30:18
>>241
あと、mavenのほかにFatJarもつかってJarを一つにまとめろ
これらは双方ともEclipse用プラグインも用意されている
271:デフォルトの名無しさん
05/09/03 00:35:15
>>253はなにか頭がバグってるな
Commonsは
Commons Sandbox以外ならかなり信用できる。
CommonsというのはJava標準APIに足りない機能を補う
ためにあるようなもんだ。
272:デフォルトの名無しさん
05/09/03 00:37:21
メールアドレスの書式チェックメソッドGenericValidator#isEmail()を
使いたいがためにCommons ValidatorのJarを入れた俺はDQNですか?
273:デフォルトの名無しさん
05/09/03 00:44:28
>>252
宗教といっても、何も確たる根拠も無しにオープンソースを否定して
これは使っちゃダメだあれは使っちゃダメだと
いきなり決めつけるのもかなり宗教っぽいけどね。
豚肉喰っちゃダメだ牛も喰っちゃダメだクリスマスなんかやっちゃだめだって
いってるイスラム教徒みたいな。食い過ぎれば不健康で心臓病になるけど
適度に運動しながら野菜などと一緒にバランス良く食べていれば無害どころか栄養たっぷり。
それを調べもせずにいきなりダメだって人に押しつけるのはプロジェクトの進行にかなり響く。
オープンソースを何も考えずに否定するのは暗黒時代の魔女狩りにも似ている。
何人もの大富豪の男を、男の姿に化けた女だと勝手に決めつけて殺してしまったっていう史実があるわけだ。
殺した後にそのお金が教会や国の資金源になるから陰湿にもわざとそういうことをしたってわけだ。
彼が外部のライブラリ使用を拒む理由は車輪の再発名をしてでも何もかも自分で作ってしまって
それがすべて自分でやったから周りから偉い奴だと思ってくれるだろう錯覚しているうのだろう。
あるいは、手柄を自分のものにして、自分にしかわからないようなコードをわざと書いて
そのプロジェクトをすべて自分の管理下に置いて自分の立場を維持したいという保守的な考えを持つ人間なんだろう。
274:デフォルトの名無しさん
05/09/03 00:45:29
>>272
いいえ。問題なし。じゃんじゃんつかっちゃいなさい。
オープンソースなんだし。
そんじょこらのクローズドソースなバイナリよりも信用できる。
275:デフォルトの名無しさん
05/09/03 11:43:33
>>267
それをやろうとするとJava5専用になる。
主要なツールはGenericsに対応したJava5対応版を出してほしい
現状だと、Java5で作っていてもツールからオブジェクトを取り出すときに結局はキャストが必要になってしまうし
276:デフォルトの名無しさん
05/09/04 10:35:13
>>273
> >>252
> 宗教といっても、何も確たる根拠も無しにオープンソースを否定して
> これは使っちゃダメだあれは使っちゃダメだと
> いきなり決めつけるのもかなり宗教っぽいけどね。
周り読んでも全然誰もそんなこと言ってないんだけど。
その極端な話の飛躍の仕方が宗教っぽい。
277:デフォルトの名無しさん
05/09/05 09:19:54
ていうかなんで今になってそんな古いネタを掘り起こしてるのかがわからんな。
>273
キモイ
278:デフォルトの名無しさん
05/09/05 12:07:30
ところでオライリーのjakarta-commonsクックブックはどうでした?
ザッと流し読みした感じだと可もなく不可もなくかなあ。
279:デフォルトの名無しさん
05/09/27 16:03:41
commons-httpclient.jar を gcj で使いたいのですが、
javax.net.SocketFactory
javax.net.ssl.SSLSocketFactory
などが gcj に対応していないためコンパイルが通りません。
しかしその部分のメソッドはプロジェクトで使用していないので
どのように回避したら良いかわかる方がいらっしゃいましたらご教授お願いします。
280:デフォルトの名無しさん
05/09/27 16:59:27
単純に
・不要なのを取っ払ってコンパイル。
・ばらして1つずつコンパイル、通ったものだけを集める。
が考えられます。知らないけどSocketFactoryはなくていいの?
それよりも、なぜここでしたか
281:デフォルトの名無しさん
05/09/28 20:52:12
>>280
早速のレスありがとうございます。
それを参考にzipアーカイバで使わないclassファイルを削除しましたが、
それぞれが関連し合っていてなかなかうまくいかないようです。
commons-httpclient.jarはオープンソース化されていないのでしょうか?
282:デフォルトの名無しさん
05/09/28 21:42:06
>>281
そんなわけない
283:デフォルトの名無しさん
05/09/30 17:34:23
CommonsじゃなくてOROなんですが
Perl5Utilのsubstittutionで\\uってちゃんと動きますか?
velocityのライブラリに入ってるバージョンで試したのですがうまくいきません。
284:デフォルトの名無しさん
05/10/04 00:07:11
commons betwixtなんですが、0.5以前のバージョンでsetWriteEmptyElements(false)と同等の処理は出来ないのでしょうか?
値を設定されていないプロパティはタグ自体が出力されないようにしたいのですが・・・。
285:デフォルトの名無しさん
05/10/04 02:19:24
>>278
俺的にはかなり勉強になりました。って一ヶ月も前のコメントですか・・・。
ファンクターなんてのがある事をこの本読んで初めて知ったよ。
考え方はデザパタで知ってたけど、標準的な方法があると使ってみようって気になるね。
ただ、条件式を切り出しただけのクラスとか作ってるとクラス数が爆発しそうな気も・・・。
Pridicateとかって実際に使ってる人います?
286:デフォルトの名無しさん
05/10/04 04:10:03
Lispのlambda(無名関数)と同じように
Predicateとかは基本的に無名クラスで使うとよい。
287:デフォルトの名無しさん
05/10/04 09:35:15
>Predeicate
結構よく使う。 基本的には無名クラスが多い。
Transfomerは滅多に使わない。 Closureは存在を忘れている事が多い。
ComparatorChainは便利。 テーブルのソートなんかで多用してる。
288:デフォルトの名無しさん
05/10/12 06:56:33
formでDynaFormを使用した場合で
java.lang.Doubleやjava.mathBigDecimalなどでform-propertyを宣言して
画面からhtml:textで未入力状態で送信すると例外を発生するのは回避不可?
BeanUtilsのpopulateメソッドのエラーっぽいし、無理かな
まあ、BeanUtilsを修正するかString型に回避すればいいけど
289:デフォルトの名無しさん
05/10/13 00:42:12
Commonsじゃないけど、Regexpってなんて読むの?
290:デフォルトの名無しさん
05/10/13 00:54:28
>>289
「レギュラーエクスプレッション」の省略形だけど、別の読み方があるのかな?
カスタムタグのTLDファイルの「rtexprvalue」も悩ましい。
「Runtime Expression Value」の省略形なんだけど。。。
291:デフォルトの名無しさん
05/10/13 23:44:14
俺はリジェックスピーって読んでるよ、心の中で。
もちろんLispのS式はセックスピー
292:デフォルトの名無しさん
05/10/14 00:03:03
僕は「れぐえくすぷ」って呼んでます。
293:デフォルトの名無しさん
05/10/14 00:36:48
僕は
れぐいーえっくすぴー
294:デフォルトの名無しさん
05/10/14 05:12:21
>>293
ヽ( ・∀・)人( ・∀・)ノ ナカーマ
295:デフォルトの名無しさん
05/10/14 14:44:10
URLリンク(jakarta.apache.org)
が落ちててDTDの読み込みに影響出てます。
同じ現象の人います?
296:デフォルトの名無しさん
05/10/14 14:47:49
携帯からだと見れてしまいました。
アクセス制限かルーターの異常か?
スレよごしすみませぬ。
297:デフォルトの名無しさん
05/10/14 15:05:15
DTD宣言を実際読みに行くのってエディタかなんか?
だったらローカルに落としたほうが手っ取り早いと思われ。
298:デフォルトの名無しさん
05/10/14 15:41:14
>>297
DTD 宣言を含む XML を編集するときにエラー扱いにされてうざい、ってことじゃないの?
俺も解決法があったら聞きたい。
299:デフォルトの名無しさん
05/10/15 17:47:58
>>283
> CommonsじゃなくてOROなんですが
> Perl5Utilのsubstittutionで\\uってちゃんと動きますか?
それはJavaのString型環境にあわせて
さらにJava用にエスケープしなければならな。
つまり、Java文字列中では、
\\u -> \\\\u
としなければならない。
\\uは Javaでは\uにみえ、
\\\\uにしたときはじめてJavaは\\uと解釈してくれる。
Perl用にエスケープしてさらにJava用にエスケープしないと
動かない。
二重エスケープってところですな。
300:デフォルトの名無しさん
05/10/15 17:57:45
>>289
regexp
レゲックス
レゲックス婦
れじぇっくす
レジェックスプ
利げっくす(プ
りじぇくす(プ
自然大数の底exp()関数よりもじってレグネスクポーネント
レグネクスポネンジャル
レグネクスポ
レグネクスプ
レグスプ
レジェクス
リジェクス
レジェバイプ
レジェザップ
リジェザップ
レジェズープス これではRege XOOPS?
レジェ・タイムズ・ペッ!
レジェタイプ
レジェペケポン
リジップス
リジェップス
レジェンプス
301:デフォルトの名無しさん
05/10/15 17:59:02
>>289
rtexprvalue
アーテフプリヴァリュー
ラリパリュー
ライプリュー
レフプライヴァリュー
レプリャリュー
レッズファリュー
302:デフォルトの名無しさん
05/10/15 19:47:31
>>267
つうか、カワイイとかかわいくないとか
どっちにしてもこんな掲示板で書いたら
月曜日その子に会わせる顔が無いよ
かわいくないと書いた時はまずいのわかっているし
カワイイと書いたなら意識されるだろうし・・・
掲示板でそんな事聞くなよ
303:デフォルトの名無しさん
05/10/15 19:49:22
>>302
いや、多分このスレに書く分には大丈夫だと思うぞw
304:デフォルトの名無しさん
05/10/15 19:51:08
誤爆?
305:デフォルトの名無しさん
05/10/15 19:51:32
>>302
オレは相談にのるぞ。
306:デフォルトの名無しさん
05/10/15 19:55:58
スマンソ
ようするに、SEXの締めをクンニ逝きっていうのが 「いみあるのか?」っていうことか
307:デフォルトの名無しさん
05/10/15 20:33:07
わたしの彼氏も風俗にいったときはすごいショックだったけど
なんか、向こうも仕事だからすごい事務的らしいよ。
わたしは絶対行ってほしくないとまではいわないけど、
行くならわたしにはいわないでほしい・・・
308:デフォルトの名無しさん
05/10/15 20:36:16
>>307
Commons つまり共通の悩みってことか。
言わなかったら浮気だと勘違いするだろ。
スレ違いだよ。
309:デフォルトの名無しさん
05/10/15 20:40:02
誤爆適用スレってしってるか?
今日は当たり日なんだろうか・・・
310:デフォルトの名無しさん
05/10/15 21:01:50
>>307
アホか、風俗はめっちゃフレンドリーやっちゃうねん。
ソース読めとかググれとか氏ねとか言わないからな。
これで有料じゃなきゃ最高なんだけどな。
311:デフォルトの名無しさん
05/10/15 21:07:08
事務的フレンドリー
312:デフォルトの名無しさん
05/10/15 23:17:53
事務的なフレンドリーと心からのおざなり、どっちがいいかっちゅうねん。
313:デフォルトの名無しさん
05/10/18 13:23:21
>>299
ご回答ありがとうございます。
ご指摘の点は理解しているつもりですが
実際にやってみると以下のように
そのまま\\uが印字されてしまいます。
new Perl5Util().substitute("s/(?:^|_)(\\w)/\\\\u$1/g", "t_mst_user");
(java.lang.String) \\ut\\umst\\uuser
なにかしょうもない勘違いをしているのでしょうか…
314:デフォルトの名無しさん
05/10/18 17:20:05
jdk-1.4.2 && jakarta-oro-2.0.8 で実行させたところ
new Perl5Util().substitute("s/(?:^|_)(\\w)/\\u$1/g", "t_mst_user")
=> TMstUser
でした。問題なさそう。('\u' が欲しいようなので '\\u' で十分の模様。)
Perl5 の正規表現に不慣れなので、もしかしたら間違ってるやも。
velocity-dep-1.4.jar ではなく
velocity-1.4.jar と jakarta-oro-2.0.8.jar の組み合わせで
試してみるとどうなります?
315:デフォルトの名無しさん
05/10/19 12:43:45
>>314
ありがとうございます!
jakarta-oro-2.0.8.jarだと無事いけました。
velocityに入っていたやつには未実装だったのですね...
316:デフォルトの名無しさん
05/10/19 15:36:50
log4jのLogクラスで行番号が出せるけど、行番号なんてどうやって出しているのだろうか
Cのプリプロセッサだけの芸当かと思ってた
317:デフォルトの名無しさん
05/10/19 16:19:04
>>316
せっかくソースも配布されているので見てみればよいのでは。
見たらかなり力技だった。Throwable#printStackTraceの出力を解析してた。
(org.apache.log4j.spi.LocationInfo)
318:デフォルトの名無しさん
05/10/19 16:33:52
>>316
マルチ
319:デフォルトの名無しさん
05/10/19 18:42:42
マルチさんのおかげて勉強になった
火のないところでthrowしてるってこと?
ロギングにそゆー力技いれるってjakartaはやっぱすげーな世界が違う
俺だったら尻込みする
320:デフォルトの名無しさん
05/10/19 20:11:35
>>319
jakarta っつーより、作ったのは IBM だろ。
すげーなっていうのは今だにバカっぽい実装してる嫌み?
行番号なんか簡単に取れるだろ。
new Exception().getStackTrace()[0].getLineNumber()
メソッド名やどこから呼ばれたかも取れる。
ただ、正常系でこんなもん使ってる奴がいたらうんこだけどな。
321:デフォルトの名無しさん
05/10/19 21:03:42
>320
いやいや違う、ロギングってオプション的な機能だから
変わった事やって主処理に影響でるなんてまずいんで
コードの質に自信がないとできないなよなと思って
言ってる事伝わらなそうだ、とにかくjakartaに嫌味なんて滅相もない、
白状するとcommonsのソース読んでからかなりパクってます。
自分で何言ってるかわかんね、まとまんね、もういい送信!今目をつけてるのbcel!
322:デフォルトの名無しさん
05/10/19 21:38:46
>>320
これいいただきん
323:デフォルトの名無しさん
05/10/19 21:45:09
>>320
これってjavaのコンパイルオプション関係なしに取得可能?
324:デフォルトの名無しさん
05/10/19 23:16:50
>>323
当然
> javac -g:none Hoge.java
とかすると取得不可。
325:デフォルトの名無しさん
05/10/19 23:27:04
>>324
ということは、企業の運用されているマシーンで、-g:noneなしにコンパイルしたクラスなら
取得可能ですね。
これいただき。
326:デフォルトの名無しさん
05/10/20 00:09:29
>>325
書いたら喜んで使い出すが奴がいそうだから、わざわざ
うんこって書いたんだが。使うんなら、ちゃんと例外コストを
考えて無効にできる機構を用意しろよ。
それを持ってるのが log4j だけどなw
327:デフォルトの名無しさん
05/10/20 00:18:02
>>321
jakarta のコード書いてる奴もただの人だろ。
見てるうちに、あほなコードがわんさかあることに気づく。
BCEL 見るなら、CGILIB、Javassist、JBoss4 のコード見てみ。
CGILIB のコードは美しい。JBoss はやってることがすごい。
328:デフォルトの名無しさん
05/10/20 00:23:54
>>320
Thread.getStackTrace() した方が。1.5 以降だけど。
329:デフォルトの名無しさん
05/10/25 11:57:00
log4jってなんでクラス毎でlog4j用のfieldを用意しなければ行けないの。
ログなんだから、普通スタティックメソッドオンリーだろ。
なんだよその仕様
330:デフォルトの名無しさん
05/10/25 12:19:40
|
J
331:デフォルトの名無しさん
05/10/25 12:30:07
│
O
G
4
J
332:デフォルトの名無しさん
05/10/25 14:04:07
↑あんた最高
333:デフォルトの名無しさん
05/10/25 23:52:17
>>329
じゃ、Log4j だけじゃなく、commons logging も JDK のロガーも
全部だめなんだな。
とりあえず、おまいがオブジェクト指向の利点が、さっぱり
分かってないのは理解できた。それが分かるまで
おまいは static メソッドの作成は禁止だw
334:デフォルトの名無しさん
05/10/26 02:00:51
オブジェクト指向の利点がサパーリわからんので、staticメソッドオンリーでいきまつ
335:デフォルトの名無しさん
05/10/26 22:05:52
>>333
わかってないやつが書きそうなもんだな。
具体的に書いてみろ。Cプログラミング屋さん
336:デフォルトの名無しさん
05/10/27 00:35:43
>>335
・プロバイダーフレームワーク
・インスタンス数の管理が可能
・実装クラスが作成時点で存在している必要がない。
・もちろん多態
・設定により実装クラスが変わる
不特定多数のシステムに提供するなら、上記のような拡張性・柔軟性は必須だ。
閉じたシステムしか書いたことない奴には分からんかもしれんな。
昔は static メソッドで書かれた俺様ロガーがたくさんあったかも
しれんが、それをオープンで公開すれば、なぜ static がだめか
なぜ要求に耐えられないかが分かるだろ。
で、分かってるお前の意見を教えてくれ。
分かってないだろw
337:デフォルトの名無しさん
05/10/27 02:39:54
>>336
作るものに依存する。
338:デフォルトの名無しさん
05/10/27 16:25:22
XMLの読み込みに特化したい場合、
Digester使うのと、XmlBeans使うのと、どちらが効率的ですか?
Digesterの解説はあちこちあるんですが、後者は自分には解説がわかりにくい。。。
XMLファイルを渡してやると、自動的にBean作ってくれたりするとありがたいんですが。
339:デフォルトの名無しさん
05/10/27 17:51:29
ASF の産物じゃないですけど Relaxer 使ってみるのも手ですよ。
XML Beans が生成するクラスはちと複雑ですけど、
Relaxer が生成するクラスはより POJO ライクです。
個人的には読み込みだけなら Digester が一番だと思ってます。
ルールを XML に書けるのが便利なんで。
ルールがある程度以上複雑になる場合
(格納クラスを手で書く手間 > スキーマを書く手間)は
スキーマ切って Relaxer 使ってます。
より複雑な検証が必要な場合は XML Beans です。
340:デフォルトの名無しさん
05/10/27 19:27:32
適当なオブジェクトをbetwixtで書き出してみて
それがしっくりくるならdigesterで足りる
じゃなきゃ俺もRelaxerをすすめる
Relaxerは頭に入れやすいよ
341:デフォルトの名無しさん
05/10/27 23:12:14
>>338
JAXB は? 定義いるけど。
342:デフォルトの名無しさん
05/10/28 08:21:46
digesterはgetしたものそのままsetしたい時に発狂する
XML Beansはさくさくいくのは困難、最初は普通に発狂する
343:デフォルトの名無しさん
05/10/28 09:33:22
digesterは設定読み込みが目的だから、setにはbetwixtが向いてるんでは
344:デフォルトの名無しさん
05/10/28 10:07:39
>>336
重症・・。
ちがうんだよ。その機能はstaticメソッドでも可能。俺はそうしている。
statcktrace使えば、さかのぼって呼び出し元が完璧にわかるから、
すべて実現できるのstaticで。
だったら普通staticで提供だろ、util関係は基本全部static実装だし、
そうするように設計すべし。
345:デフォルトの名無しさん
05/10/28 10:22:25
static メソッドになった場合、今までと同様の情報を出力するには
確実に今までよりパラメータが一つ増えるんだが、
それをわずらわしく感じないなら、それでいいんじゃないかな。
俺は勘弁してほしいが。
if(logger.isTraceEnabled(){
logger.trace("なんやら", t);
}
↓
if(Log.isTraceEnabled(this)){
logger.trace(this, "なんやら", t);
}
346:338
05/10/28 11:12:59
>>339-343
アドバイスありがとうございました。
とりあえずDigesterで基本的な動きは確認してみました。
XML読み込んで、それをマップしたObjectからのgetだけが目的なので、
事足りそうではありますが、
Relaxerの評判も良いようなので(確か国産ですよね?)、こちらも勉強したうえで、
どっちが自分の目的に合うのかを判断してみることにします。
347:デフォルトの名無しさん
05/10/28 11:21:37
>343
親をgetしてカレントのsetへってやりたくなんなかった?俺だけ?
もしできるの?できそうでできないのがすっごい発狂したんだけど
>338
digesterは既存のものにあわせるとしんどかった
digester前程で作ればすごい楽だと思う
>345
勘弁同意
Logger.instance(this).log("えらー")っての見たことあるこれは辛かった
348:デフォルトの名無しさん
05/10/28 12:24:39
>Logger.instance(this).log("えらー")
うわ嫌すぎる...
staticにすることで手間が増えるんなら、オブジェクトでいいじゃんよ。
しかも元からあるんだから、いちいち書く手間いらないし。
349:デフォルトの名無しさん
05/10/28 12:47:33
Logoer の話題が出たついでに便乗質問。
private static Log log = LogFactory.getLog(Hoge.class);
private Log log2 = LogFactory.getLog(this.getClass());
この二つのメリットとデメリットって何ですか?
前者を使えと言われて理由も聞いたような気がするんですが忘れてしまいました。on_
350:デフォルトの名無しさん
05/10/28 22:37:08
>>349
おまいも >>344 と同じくらい分かってないな。
Hoge.class を渡すのと getClass() の違いはなんだ?
例えば、後者はそのロガーの getter があったとしたら、
Hoge のサブクラスはそれを自分のクラスのロガーとして利用できる。
どっちもログインスタンスはキャッシュされるが
上記のような理由がない限り前者だろうな。
351:デフォルトの名無しさん
05/10/29 00:15:37
>>349
後者はstaticメソッドから呼び出せないなり
352:デフォルトの名無しさん
05/10/29 10:04:10
>>348
だからてめーらほんととわかってないな。ソースみろ!
thisなんかしなくても、結局スタックつかって呼び出し元特定してるの。
いいか、thisはまったく考えなくていいんだよ。ほんと疲れるは。
もうレスしないから、あきらめないでちゃんと考えろ。
あきらめた時点で一般人と同じだよ。結局使う側の人間さ
353:デフォルトの名無しさん
05/10/29 12:09:11
>>352
使う側の人間っておまえもだろw
俺様フレームワーク作って喜んでたらもっとバカだけどw
っつかスタックトレースいちいち解析してんの?
354:デフォルトの名無しさん
05/10/29 14:16:14
全ログaspectで後付けだってできるんだし、方法なんて探せばいくらでもでるでしょ
主観だけどlog4jだと助かる。commons-loggingだと更に楽
間違いの起き難い作りだと思うよ。
355:デフォルトの名無しさん
05/10/29 14:37:55
>>354
どうせ、log4j 使うんだろ?
何のために commons かます?
パフォーマンスがわずかに落ちるし、シンプルでなくなるし、
機能的に log4j から他のロガーに変えるなんてありえん。
あー、ちなみに俺はいくつかのシステムで
commons logging + log4j を採用してきた。
今は log4j だけにしとけば良かったと思ってるし、
今後は log4j だけでいく。
356:デフォルトの名無しさん
05/10/29 14:54:56
log4jってファイルの保存先が未定義の場合とかって
コンソールに表示されたっけ?
log4jでConsoleAppender使えばいいかもしれないけど
別にcommon-loggingでもlog4jでもどっちでもいいんじゃない?
>>355の言うとおり最終的にはlog4jになる場合多いし
java.util.loggingってどうなの?
357:デフォルトの名無しさん
05/10/29 18:37:26
>355
前に、呼びだしてる奴等のデータ欲しくて
1回こっきりのLogFactory作って片っ端からbetwixt.BeanWriterで吐かせた
便利だと思った。commonsは力技に屈してくれる
あと移動が楽、考えて見るとこれといった理由は無い。
確かに運用ではlog4jしか使わないんだけどね
358:デフォルトの名無しさん
05/10/29 18:46:19
SAPの吐くログと一緒に管理したいという要望があって
Commons Logging用のSAPのLoggerを作ったことがある。
359:デフォルトの名無しさん
05/10/29 21:25:51
>>357
>>358
なるほど。でも、log4j のアペンダでもいいよな。
っつーか、俺は log4j の MDC の便利さにはまった。
リクエストヘッダやリクエスト、セッションの内容を全部 MDC に
セットしとけば、log4j の出力設定でなんでも出力できる。
運用開始後に客がブラウザの種類とか、リモートIP、ログインIDを
ログに出せとか言われても、設定だけで可能。
360:デフォルトの名無しさん
05/11/01 00:02:01
>>352
スタックフレームの取得ってかなりコスト高いんだが。
頻繁に呼び出すログ出力処理でそんな事やるのは愚行ではないかと。
361:デフォルトの名無しさん
05/11/01 00:34:37
ログって、見てはいるけど、見るだけじゃ勿体無いよな。
何が勿体無いって?
入力と出力、分かっちゃいるけど、忘れちゃう基本的な試験にもでてくる基本中の基本。
入力がてんでばらばらの出力を見てたって、整理つかない、見えるもんも見えない。
意図的に入力を加えて、その出力LOGを見るのがトラブルシュートの基本中の基本。
入力と出力、バカにしちゃうけど、バカにできない、
これで少しはトラシューも、楽リマクリスティー♪
362:デフォルトの名無しさん
05/11/02 20:25:29
log4jでgetLogger("aaa.bbb.ccc")ってやって
aaa.bbb.ccc.ddd.eeeのパッケージだけログを出したくないときってどうすればいいのでしょうか。
363:デフォルトの名無しさん
05/11/02 20:50:41
NullAppender
364:デフォルトの名無しさん
05/11/02 23:55:22
出したくないといいつつ、エラー時くらいは出したいのではと勝手に想像すると
aaa.bbb.ccc.ddd.eeeを新規にカテゴリ定義してレベルをFATALにする。
365:デフォルトの名無しさん
05/11/03 00:57:46
Enumratar用のユーティリティーって何かありますか。
366:デフォルトの名無しさん
05/11/03 01:07:33
toString系使用していますか?いまいち期待道理に出ないです。
System.out.println(new ToStringBuilder(request.getAttributeNames(), ToStringStyle.MULTI_LINE_STYLE));
をしても何もでないです。
367:デフォルトの名無しさん
05/11/04 13:10:21
reflectionToString() だけ使いまくってる。
ユニットテストクラスで、値確認する時とか。
他のは結局手で書いた方が早くなったので
以来使わなくなりました。
368:デフォルトの名無しさん
05/11/04 23:58:59
>>367
Commonclipse のほうが早くないか?
369:デフォルトの名無しさん
05/11/05 02:35:29
>>368
Commons4E
URLリンク(www.jiayun.org)
これとどっちがいい?