【Java】Apache Jakarta Commons

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
クラスもかなり増えてきた
Apache Jakarta Commons について語るスレッド

Apache Jakarta Commons
http://jakarta.apache.org/commons/

中でも便利なものが
Commons Lang
http://jakarta.apache.org/commons/lang/
Commons Collections
http://jakarta.apache.org/commons/collections/
Commons FileUpload
http://jakarta.apache.org/commons/fileupload/

とくに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】  
http://pc5.2ch.net/test/read.cgi/tech/1094958940/
16デフォルトの名無しさん:04/09/12 12:19:35
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
http://pc5.2ch.net/test/read.cgi/tech/1075516112/

《The Jakarta Project》
http://pc5.2ch.net/test/read.cgi/tech/1019996589/
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
http://pc5.2ch.net/test/read.cgi/tech/1094954163/
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 http://muimi.com/j/jakarta/commons/digester/
の例での 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は自前で作るんで、その辺を
解決しようと言うものだな。
5045: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」と書き換えたらあんたの希望
の動作になるんじゃないのか?
5250: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を頭に描きながらサンプルを追いかけるべし。
5933: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
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
http://cvs.apache.org/viewcvs.cgi/jakarta-commons/combo/
ここなんだけど、かなり古い情報でこしらえる。これは利用するもんじゃないの?
ちゃんとこしらえてくれるならいいと思うんだけど
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
http://jakarta.terra-intl.com/commons/betwixt/overview.html
public class SomeBean {
public <CollectionType> getFoo*();
public void addFoo(<SingularType> foo);
}

できるっぽい。試して報告汁
81デフォルトの名無しさん:04/10/01 02:07:13
>>80
情報dクスです。
Adderメソッドですか・・・。
月曜にでも試して報告します。

ありがとうございました!
8277: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 http://java.sun.com/products/jsse/)
jnet.jar (try downloading from http://java.sun.com/products/jsse/)
jcert.jar (try downloading from http://java.sun.com/products/jsse/)
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のソースの以下の箇所を修正した。
http://blog.livedoor.jp/elis/archives/485398.html
XML-RPCは日本語にデフォルトでは対応させていない
http://backno.mag2.com/reader/BackBody?id=200406281000000000094752000
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@プログラマー
http://pc5.2ch.net/test/read.cgi/prog/1090129578/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
http://joda-time.sourceforge.net/
日付と時間のライブラリ。Date,Calendarの代用


ネタ元はここ(Introducing JDesktop Integration Components, Part 2)
http://today.java.net/pub/a/today/2004/11/01/jdic2.html
JDICとSaverBeansの紹介記事
108デフォルトの名無しさん:04/12/05 21:46:10
攻略Jakarta Commons
たなか ひろゆき (著)
http://www.amazon.co.jp/exec/obidos/ASIN/4797325208/ref%3Dnosim/terrainternin-22/250-8125910-7672254


この本ってどうよ?
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-jakartadj?
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
あなたの行くべき場所は以下の板のどこか。ここではない。
http://pc5.2ch.net/mysv/
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でのやり方がここに載っていますが、
ttp://homepage3.nifty.com/masarl/article/junit/gnu-make.html
ttp://homepage3.nifty.com/masarl/article/junit/gnu-make/junit.el
これを参考にすればant用のが書けるはずです。
121119: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でのやり方がここに載っていますが、
>ttp://homepage3.nifty.com/masarl/article/junit/gnu-make.html
>ttp://homepage3.nifty.com/masarl/article/junit/gnu-make/junit.el
>これを参考にすれば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
ttp://issues.apache.org/bugzilla/show_bug.cgi?id=24569

こういうことだった。半年以上ほったらかしか・・・
パッチ書くのも面倒なので1.6.0に下げて対応することにした。
136デフォルトの名無しさん:05/01/29 01:58:55
Jakarta Commons Cookbook
http://www.amazon.co.jp/exec/obidos/ASIN/059600706X/

誰かこれ買った奴いる?
感想教えてちょ。
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の動作確認をしたところ、ブラウザを開き
http://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単体で動かせば良いと思う
148143:05/03/17 19:50:04
了解!飛ばしてやってみます
149デフォルトの名無しさん:05/03/17 20:40:10
>>146
ネタかと思ったら、本当にあるのね。
Webアプリケーションの開発とかに使うのなら、一度削除してから
自分で再インスコするほうがよさそうだけど。
150デフォルトの名無しさん:05/03/20 08:39:26
つか、初心者用の本で、わざわざ最初にApacheとの連携させる意味がわからんな。
151デフォルトの名無しさん:2005/03/24(木) 11:02:01
前スレ(?)をHTML化してもらいました.

《The Jakarta Project》
http://ruku.qp.tc/dat2ch/0503/23/1019996589.html
152デフォルトの名無しさん:2005/03/31(木) 23:31:18
antの質問いいですか?
153デフォルトの名無しさん:2005/03/31(木) 23:31:41
antってなんですか?
154デフォルトの名無しさん:2005/03/31(木) 23:32:03
山は死にますか?
155デフォルトの名無しさん:2005/03/31(木) 23:32:24
川はどうですか?
156デフォルトの名無しさん:2005/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デフォルトの名無しさん:2005/04/20(水) 16:28:13
荒れてますね・・・

Jakarta Commons Daemon
http://jakarta.apache.org/commons/daemon/
を使ってる人いますか?使い勝手とか感想が聞きたいんですけど・・・
160デフォルトの名無しさん:2005/04/20(水) 22:22:41
>>159
仕方がないとはいえ、Cで作ったライブラリを一部使うので、jarがあればどこでも使えるというわけには
いかない。狙い所はいいのに、なんとかならんものか。
161デフォルトの名無しさん:2005/04/20(水) 22:54:57
SWTとかJDICみたいに、それぞれのOS用のバイナリがあればいいだけじゃない?
162デフォルトの名無しさん:2005/04/21(木) 05:56:02
>>160
OSに深くかかわる部分だしある程度は仕方ないね
163デフォルトの名無しさん:2005/04/21(木) 22:01:27
Windows だけのことを考えるなら
JavaService の方が使い勝手は良さそう。
164デフォルトの名無しさん:2005/05/18(水) 20:54:39
保守
165デフォルトの名無しさん:2005/05/19(木) 07:27:22
Apache FtpServer
http://incubator.apache.org/projects/ftpserver/
誰かつかったことある人います?
使用感とか教えていただけると助かります。
166デフォルトの名無しさん:2005/05/24(火) 10:43:27
torqueって使えそう?
ほかのフレームワークとかもだけどDBを完全に正規化しておくとかVIEWを作ってあげないとだめぽなのかなぁ
167デフォルトの名無しさん:2005/05/24(火) 10:55:12
>>166
そんなもまいにこのスレを。

Java⇔RDBのMapping-Frameworkを語るThre Vol.3
ttp://pc8.2ch.net/test/read.cgi/tech/1090653286/
168デフォルトの名無しさん:2005/05/24(火) 11:01:27
>>167
dです。
早速のぞいてみます。
169デフォルトの名無しさん:2005/05/24(火) 12:22:40
Torqueはメイン開発者がお亡くなりになったので、開発がほとんど進んでない。
HibernateかS2DaoかEJB3待ちか、最近の選択肢は3つ。
170デフォルトの名無しさん:2005/05/24(火) 12:33:03
O/R-Mappingならそれでもいいけど、
手軽にSQL-Mappingということなら、iBATISも選択肢に入ると思われ。
171デフォルトの名無しさん:2005/05/28(土) 15:46:48
質問です。

Commons NetのSMTPClientでsendMessageData()メソッドを使ってメッセージ送信する際、
文字エンコーディングを指定するにはどうすればいいですか??

何か参考になるサイトでもいいのでどなたかよろしくお願いします m(__)m
172デフォルトの名無しさん:2005/05/28(土) 22:51:05
age
173デフォルトの名無しさん:2005/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デフォルトの名無しさん:2005/05/29(日) 16:29:36
POIでExcelシートをワークブックの任意の位置に移動するメソッドはありますか?それっぽいのがみつかりません。
175デフォルトの名無しさん:2005/05/29(日) 16:35:59
シートの順番の入れ替え?
176デフォルトの名無しさん:2005/05/30(月) 02:00:15
>>173 横から報告してみる。
# いま、Jakartaにつながらない。

半年前使ったときには、SMTP はJavaMail を使ってました。
MultiPartには対応していていました。
そのときは、charsetがまともに指定できてなかったと思います。
177JavaMailプロ:2005/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デフォルトの名無しさん:2005/05/30(月) 06:31:08
ちょっと時代の流れとずれてるために、努力が日の目をみない人ですか?
179デフォルトの名無しさん:2005/05/30(月) 08:28:36
なんだよてめぇ、朝から喧嘩うってんか
180177訂正:2005/05/30(月) 08:57:05
× ただし、(2)では実際のエンコーディング処理は内部的にJAFのDataHandlerが呼び出している
○ ただし、(1)(2)の実際のエンコーディング処理は、MIMEタイプに応じてJAF APIのDataHandlerが処理してる
181デフォルトの名無しさん:2005/06/03(金) 02:08:39
>>175
そうです
182デフォルトの名無しさん:2005/06/03(金) 02:15:18
頑張れ!目的不明な単発質問くん!
183デフォルトの名無しさん:2005/06/03(金) 02:54:43
質問のフリ荒らし:書くことはないがスレの流れが気になって仕方なく
          とりあえずスレ違いにはならないとおもわれる範囲で
          質問・同意を得る形式でレスをすること。
          答えがどうあろうとレス稼ぎが問題なので単発で終わることが多い。
184デフォルトの名無しさん:2005/06/04(土) 11:59:28
Writerからどうやってエンコーディング指定できるOutputStreamWriterに変換すればいいですか?
185デフォルトの名無しさん:2005/06/04(土) 12:18:02
>>183
レス稼ぎと荒らしの関連性が分からん。
186デフォルトの名無しさん:2005/06/05(日) 11:37:07
>>185
無視しろ。183はコピペ荒らしだ。
187デフォルトの名無しさん:2005/06/11(土) 13:14:35
Commonsじゃなくて申し訳ないけど、Luceneって何て読むの?
すっげー気になったもんで。
188デフォルトの名無しさん:2005/06/11(土) 13:19:18
>>186死ね

>>187 ル・シ〜ン!!! (銭型警部の声で
189デフォルトの名無しさん:2005/06/11(土) 14:15:25
ルセーヌだよ。
190デフォルトの名無しさん:2005/06/11(土) 14:39:45
エルセーヌだよ。
191デフォルトの名無しさん:2005/06/11(土) 21:41:21
192デフォルトの名無しさん:2005/06/12(日) 00:33:15
>>188
それは「アルセーヌ・ルパンIII世」
193デフォルトの名無しさん:2005/06/12(日) 00:35:23
銭型警部:「ヤツはとんでもないものを盗みました・・・それは貴女のデスクトップ検索情報です・・・」
194デフォルトの名無しさん:2005/06/12(日) 01:12:29
「ところで、今、こんな顔(σ・д・)したやつこなかったか?」
「ばかもーん、そいつがルパンだ、追え〜」
195デフォルトの名無しさん:2005/06/12(日) 02:36:06
>>194
ルパンごっこ?
196デフォルトの名無しさん:2005/06/12(日) 10:51:31
1.コンビニでアンパンをひとつ買い、
  「インターポールの銭形です。 ルパンを追っているので見かけたら連絡をお願いします。」
  と言って立ち去る。

2.すぐにドタバタ戻ってきて店員に、
  「今わしを見かけなかったか?」
  と怒鳴りつける。

3.「今あなたアンパン買って・・・」
  「ばかもーん!そいつがルパンだー!!」
   と言って、またドタバタと出て行く。
197デフォルトの名無しさん:2005/06/12(日) 15:17:38
で、アンパンマンはいつになったら出てくるんだ?
198デフォルトの名無しさん:2005/06/12(日) 15:35:31
「ところで、今、こんな顔(σ・д・)したやつこなかったか?」
「ばかもーん、そいつがアンパンマンだ、追え〜」
199デフォルトの名無しさん:2005/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デフォルトの名無しさん:2005/07/26(火) 11:35:15
公式サイトdj?
201デフォルトの名無しさん:2005/07/26(火) 11:38:34
apache.org 全滅?
202200:2005/07/26(火) 12:34:01
復帰したみたい。
203171:2005/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デフォルトの名無しさん:2005/08/07(日) 00:45:50
DbUtilsは開発してんの?
205デフォルトの名無しさん:2005/08/09(火) 20:32:26
BeanUtilsが便利すぎる
現場で使ってる奴がほとんどいないけど・・・
206デフォルトの名無しさん:2005/08/09(火) 22:58:23
>>205
BeanUtilsは型やプロパティ名が実行時解決なので、
コンパイル時にチェックできないバグが増えるから気をつけてね。
207デフォルトの名無しさん:2005/08/10(水) 12:08:05
それは困憊る
208デフォルトの名無しさん:2005/08/10(水) 13:10:11
直接使ってなくても他のフレームワークが間接的に使ってること多いね。
何するライブラリなのか分かってないけど
リフレクションでウハウハするための何か?
209デフォルトの名無しさん:2005/08/10(水) 20:01:42
Strutsとかhibernateはばりばり使ってると思う
ソースは見てないけど、xmlから読み込むなら
やっぱりリフレクトでウハウハかなとは思う
210デフォルトの名無しさん:2005/08/10(水) 22:17:10
つーかBeanUtilsってStrutsから派生したんじゃなかったけ?
確かにウハウハだが、なんでもかんでもMapに詰め込んでってのは
エレガントではないな。 まあただの宗教論争だが。
211デフォルトの名無しさん:2005/08/10(水) 22:17:25
他のフレームワークやライブラリが間接的に使ってる分にはいいんじゃない?
一応テスト・デバッグ済みってことになってるし。
リフレクションは重いけどね・・・

Hibernateはリフレクション使ってないよ。使ってたらもっと重いフレームワークになる。
Strutsはバリバリ。カスタムタグとか、リクエストパラメータをActionFormにセットするところとか、
DynaActionFormとか。BeanUtilsはもともとStrutsの一部だったモノだしね。
212デフォルトの名無しさん:2005/08/10(水) 23:03:40
BeautilsはcopyPropertyメソッドが素敵だから使ってる
ところでhibernateってなんて読むの?
未だに分からない
213デフォルトの名無しさん:2005/08/10(水) 23:37:38
ハイバーネートと読んでみるテスト
214デフォルトの名無しさん:2005/08/11(木) 00:36:12
「はいべるなーと」
215デフォルトの名無しさん:2005/08/11(木) 00:38:08
>>211
リフレクション使ってないけど、バイトコード操作なんていうコンパイル時にチェックできないバグがもっと増える仕組み使ってるがね。
216デフォルトの名無しさん:2005/08/11(木) 01:10:58
>>215
いいんじゃない?テスト・デバッグはHibernate開発者の責任だし。
自分でそういう仕組みを使うときは気をつけてね、ってことで。
217デフォルトの名無しさん:2005/08/11(木) 01:13:28
リフレクションもね。
フレームワークとか作るんじゃなくて普通の業務ロジックのためにバイトコード操作してたらブッコロスね。
218デフォルトの名無しさん:2005/08/11(木) 22:21:47
     /;:;:;:;:;:;:;:;:;::!!''"           !;:;:;:;:;ヽ
     |;:;:;:;:;:;:;:!'"              ヽ;:;:;:;ヽ
     |;:;:;:;i''"                 i!;:;:;:;|
     |;:;:;:;|                  ヾ;:;:;:|
     |;:;:;:;|    ,,,;;:iii;;;;;    ,.-==--、. `!;:;|ヽ
      〉;:;:| ,.-''" ̄ ̄ ̄`ヽ⌒|  --。、-、 ヽ-`' |  綺麗な顔してるだろ   
     i `u i -‐'"ヾ'"  :: ::!      : |  ノ 落選するんだぜ、これ。   
      i   |       ノ   ヾ、___ノ  ::|     
      | |  ヽ、__,.-i     i 、    :  :|  
       | |  :   : '" `〜ー〜'" ヽ : :   ::| 
       `i   ヾ '    ____  ;:  ;: :| 
        \     -‐'''"~ ̄ ̄ ̄ ̄  ;  ;: :/-
         ヾ: : .   ` " " "    ,./ 
219デフォルトの名無しさん:2005/08/11(木) 22:23:53
Strutsとかhibernateはばりばり使ってると思う
ソースは見てないけど、xmlから読み込むなら
やっぱりリフレクトでウハウハかなとは思う
220デフォルトの名無しさん:2005/08/11(木) 23:04:53
コピペしなくいいよ。明らかに釣りだろ。
221デフォルトの名無しさん:2005/08/12(金) 00:06:12
リフレクトってどんぐらい重くなるんだ?
まあ原理的には重そうなんだけど開発環境じゃそんな体感できないし。
どういう状況までなら使えるのか線引きが出来ない。
で、結局デバック用のBeanのフィールドのログはきぐらいにしか使ったことない。
222デフォルトの名無しさん:2005/08/12(金) 00:12:03
>>221
テーブル5つ程度の簡単なアプリをローカルのPCで動かすだけで
体感できるほど重くなるよ。

Beanのsetter/getterを呼ぶ箇所を全部BeanUtilsを使うように書き換えてみるとわかる。
書き換えるクラス数も10数個程度。

リフレクションは、重いという弊害の他に、ダウンキャストの危険性も多い。
Mapオブジェクトと同じように、せっかくJava言語に用意されている
「型安全性」を無視してしまうから個人的に好みではない。
223222:2005/08/12(金) 00:12:51
> リフレクションは、重いという弊害の他に
BeanUtilsは、に訂正してくれ。
224デフォルトの名無しさん:2005/08/12(金) 03:07:36
BeanUtils,Betwixtは超便利
Lang,Collections,IOは常用
Codec,HttpClientはたまに
225デフォルトの名無しさん:2005/08/16(火) 12:27:46
>ところでhibernateってなんて読むの?
普通にハイバネートで良いかと。一般動詞っすよ。

>リフレクトってどんぐらい重くなるんだ?
使い方次第としか。
何かのラッパークラスのソース自動生成とか、
コストのかかる処理(接続とかインスタンス生成とか)の一部で使う分には
全く問題にならんレベルだと思うし。

>224
io, logging は常用
dbcp,pool,collection,beanutilsは常用ライブラリ(Springとか)が間接的に使用
digester,betwixtは以前常用してたけどxmlbeansに移行してしまった今日この頃。

commons じゃない jakarta スレってないんでしょうか。
velocity くらいしか使ってないけど。。
226デフォルトの名無しさん:2005/08/17(水) 00:00:00
>>225
このスレはとっとと終わらして、Jakarta スレたててくれ。
1年弱で 200 ちょっとしか消費してないから、使い切るのは
4年後か。
227デフォルトの名無しさん:2005/08/17(水) 23:45:07
>>224,225
IOって便利なの?
あおってるわけじゃなくて普通に知りたい。
オススメ機能教えてよ。
そんな常用するほど使えそうなの見つからない。
まあ名前で使えそうなのさっと探しただけだけど。
closeQuietlyとかソースみたら何じゃそりゃって感じだし。
228デフォルトの名無しさん:2005/08/18(木) 09:37:08
つか closeQuietly しか使わないけど。

あれ使わないとなると
・毎回try-catchのネストを記述する。
・自作ライブラリに closeQuietely 相当のものを用意してそれを呼び出す。
のいずれかですよね。

前者は保守性・視認性・手間の全ての面からして
個人的にはありえないと思ってます。

後者は他人がコード読んだ時を想像するに、
俺様関数にぶち当たって関数のコード読む手間と
読み終わってから「結局commons-ioのアレじゃねえか。」
と溜息つかせる事を考えれば、あんま嬉しくない気がします。
229デフォルトの名無しさん:2005/08/18(木) 23:36:28
closeQuietelyだけだったらさすがに環境構築のたびにクラスパス通して
インポートしてってよりは自分とこの共通クラスにコード書くね。
だって誰が書いたってああなるでしょ。
実際ほとんど同じのcommons自体知る前に書いてたし。
結局commons-ioかよとか思わないと思うけどね。
別にたいした手間じゃないんだけどクラスパスが無駄に多いのは好きじゃない。
まあ好みの問題だと思うけど。
230デフォルトの名無しさん:2005/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デフォルトの名無しさん:2005/08/19(金) 02:48:30
>>229
環境構築のたびにクラスパスったって、今日ビ、IDEでプロジェクト作成したときに登録するだけだろ。
importなんか勝手に書いてくれるし。
232デフォルトの名無しさん:2005/08/19(金) 09:51:56
> 実際ほとんど同じのcommons自体知る前に書いてたし。
こういう勘違い発言をする奴がいまだにいるのか。
フレームワーク・ライブラリ・デザインパターンがなぜ存在するのかを考えろよ
233デフォルトの名無しさん:2005/08/19(金) 11:55:20
俺は228ですが。

>229
プロジェクト作るたびにそのプロジェクトの Utility クラスに
closeQuietely 相当のコードを記述するんですか?
毎回同じ事を書くのに?
俺様.jar にまとめてしまった方が100倍マシだと思いますけど。
とても好みの問題だとは思えないです。

毎回同じクローズ処理

うぜえから関数化(今このあたり)

毎回同じ関数書いてるから俺様.jar作成

気がつけば当たり前のようにみんな同じことやってる

車輪の再発明は時間の無駄だから commons-io にしてしもうぜ
234デフォルトの名無しさん:2005/08/19(金) 12:04:27
下の三行はまったく必然性は無いだがなw
closeQuietelyしか使わない前提で話を進めているようだから、
メソッド一つのために外から拾ってきたライブラリを入れのか普通?
jarがいくつになれば気が済むんだと問いたい問い詰めたい。
235デフォルトの名無しさん:2005/08/19(金) 12:26:30
毎回テスト・デバッグするより信頼性のあるライブラリを使う方が数百倍まし。
毎回他人の俺様コードを見るより「いつものライブラリ」を使う方が数百倍まし。
236デフォルトの名無しさん:2005/08/19(金) 12:36:07
あっそう。拾ったライブラリはテストしなくても信頼できるんだ。ふーん。
目当てのメソッド以外のクラスやメソッドが使われた時のテストや管理のリスクは無視か。
趣味で触ってるやつならともかく、人のコード見ないで出来る仕事ってそうはないと思うがな。
>jarがいくつになれば気が済むんだと問いたい問い詰めたい。
これについでの回答は?
おめぇの趣味で一々jar入れてたら100や200個になりかねないから、
採用に当たってのポリシーが必要なわけだが、
お前が使いたいメソッドが1個あるから入れろってか?
俺がリーダーなら帰れって言うな。
237デフォルトの名無しさん:2005/08/19(金) 12:59:23
公開ライブラリについての見解は、場所(人)によって異なるから
>>236 のような視点では結論は出ないよ。(意見を否定しているわけではない。念のため。)

ただ、俺様.jarはいただけない。その点は >>235 に同意。
ひどいPGだと、よそで使ったコードをそのまま持ち込もうとしたりとか。
そういう意味でもやばい。

> jarがいくつになれば気が済むんだと問いたい問い詰めたい。
必要とあらば仕方ないんじゃね? IDE使えば無問題だし。
238デフォルトの名無しさん:2005/08/19(金) 13:02:27
たとえ一つでも誰もが使うメソッドがある。
ってのは採用に値しないのか?

これはもう釣りかも分からんね。
239デフォルトの名無しさん:2005/08/19(金) 13:09:13
> あっそう。拾ったライブラリはテストしなくても信頼できるんだ。ふーん。
バカか?テスト・デバッグはライブラリベンダの役割だ。
それとも、おまえのところは初めて使う製品はすべて自社でテストし直すのか?

>人のコード見ないで出来る仕事ってそうはないと思うがな。
それは当たり前だが、少なければ少ないほどいいのがわからないのか?
毎回同じコードを書き直すほうがいいのか?

> >jarがいくつになれば気が済むんだと問いたい問い詰めたい。
いくつになっても結構。
なぜ増えると困るのかね?もしかして全部手作業でデプロイしてるとか?w


240237:2005/08/19(金) 13:43:37
一つ言わせてくれ。
>>237 の目欄におかしなものがくっついてるが、ただの消し忘れだ。


ごめんなさい。orz
241デフォルトの名無しさん:2005/08/19(金) 14:03:08
>バカか?テスト・デバッグはライブラリベンダの役割だ。
自社で使ってるライブラリ(そっちの言う俺様jar)とかならテスト済みだから、
毎回テストが必要って言うお前の主張がおかしいって話だ。

>いくつになっても結構。
ど素人ってのがよく分かったから、今度人のプロジェクトに参加する時に
「このメソッドが使いたいから、このほげほげjarをプロジェクトに入れてね」と頼んで見な。
お前が入れるのは別に反対はしないが、
そうしなければならないというお前の主張が常識と思うならそりゃ大間違いだな。

>たとえ一つでも誰もが使うメソッドがある(ry
ないな。外部ライブラリーの使用のリスクについてまったく無知でなければそんなことはしない。
jarが本当に100個になっても、そのバグ情報やバージョン、ドキュメントなどを管理できる
スーパープロジェクトリーダーならともかくな。
242デフォルトの名無しさん:2005/08/19(金) 14:22:38
> 自社で使ってるライブラリ(そっちの言う俺様jar)とかならテスト済みだから、

はぁ?
↓Jarを入れないって話じゃなかったのか?

> jarがいくつになれば気が済むんだと問いたい問い詰めたい。

243デフォルトの名無しさん:2005/08/19(金) 14:24:32
>>241
で、おまいはApacheのプロダクトを使うときは毎回自社ですべてのコードをテストし直すのか?
244デフォルトの名無しさん:2005/08/19(金) 14:28:50
> 「このメソッドが使いたいから、このほげほげjarをプロジェクトに入れてね」と頼んで見な。
俺はどっちかというとアーキテクトの立場だから
「このライブラリを使いましょう」という俺の意見はほぼ通ってるよ。
245デフォルトの名無しさん:2005/08/19(金) 14:32:43
話がこじれてる理由がわかったよ。
>>227=>>229=>>234=>>236=>>241はひとつのメソッドが使いたいだけなのに、
その他のメソッドがついてくる(はずせない)のは問題ないのかと言ってるのね。
他の香具師らが言ってるメリットと比べてこっちの問題のが大きいだろと。

その問題ってのが当たり前だの常識だのって言葉でくくられてるからかみ合わないわけね。
実際にリスク見積もって判断しろよって>>227(略)は言いたいんだよな?
それならわかるわ。

不謹慎だが、宮城の地震で屋根が落ちたプールの話と同じ構造だな。
業者に丸投げ(他所のライブラリをチェックせず使う)すると安く出来上がるが、
安全であるかどうかの確認がしにくくなる。

>>239のいうライブラリのテストデバッグは〜ってのはまさにこの構図。
最終的な客に対する責任は利用するコードを書いた側に出てくるんだぜ?
断じて、ライブラリを提供した側ではない。

通常は、ライブラリを売ってるところが提供した範囲での責任を取ってくれる
(ライブラリ利用側が客に取る責任よりは小さいわな)、オープンソースだと誰が責任をとる?
もしかしたら、ライブラリのバグのせいで、もまいのシステムが人を殺すかもしれないよ?
246デフォルトの名無しさん:2005/08/19(金) 14:35:07
話が大きくなり杉。
ライブラリ必要なら入れましょう。
その方が楽なの当たり前。
ただたった一個のメソッドのために入れるのは賛否別れる。
個人的には開発の規模にも因るけどたぶん入れない。
しかもcloseQuetlyじゃね。
結論は程度の問題でしょ。
247デフォルトの名無しさん:2005/08/19(金) 14:46:48
>>234=>>236=>>241です
きれいにまとめてくれてありがとう。
>244
jarを入れるのには>245のほかにドキュメントの提供・バージョン・他のライブラリとの相性があるから、
同じアーキテクトの立場ではあるが、リスクを考えるとやはり慎重になるな。
248デフォルトの名無しさん:2005/08/19(金) 18:31:40
拾ってきたライブラリ云々に関しては、Commonsだけは別格じゃないの?
少なくとも定番化してるものに関しては拾ってきたとかいうレベルの信頼
性ではないと思う。
もしCommonsを信頼できないとするなら、俺は同僚が書いたコードの方
が遥かに信頼できないよ?w
そして、同僚は俺の書いたコードを信頼できないと思うだろうorz

バグがないとは言わないし、テストに漏れがないとも言わないが、それは
結局誰が書いても同じ事だし?
それなら、より多くの人に触れられ検証される事になるCommonsの方が
信頼できる。
249デフォルトの名無しさん:2005/08/19(金) 21:07:59
commons使って痒い所に手が届かなかったら自分たちでコードを作れば
いいと思うけど・・・
オープンソースにとやかく文句いっても仕方ないでしょ
いっても使ってるのは、loggingとBeanUtilsだけなんだけど
ioも使えるのか・・・ちょっとやってみよう
ところでDbUtilsとCollectionってどうなの?
250デフォルトの名無しさん:2005/08/19(金) 21:53:15
なんかまた話がすりかわってるだろ。
いつの間にかcommonsのバグの話になってるし。
一個でも使えそうなメソッドがあれば
オープンソースを使わなければならない。
そうしないやつはオープンソースをわかってないし
作ってるシステムもぐちゃぐちゃって感じだね。
commonsかなり気に入って使ってるけど
さすがに一個のメソッドで入れたりしない。
なんかオープンソース好きっていうか宗教っぽいな。
251デフォルトの名無しさん:2005/08/19(金) 23:13:11
バグの話じゃないとわかってても一応>>248みたいな奴には言っておきたい。
commons-langとかでも普通にありえないバグあるから。
バグじゃなくてもパッケージごと移動とかもあるし。
バージョン上がると非推奨になってるやつもいっぱいある。
例えばだがjspでimportしてる古臭い大規模システムだったらimport直して
動作確認するだけでちょっとした人件費に飛ぶな。大人数で開発してる環境ならなおさら。
でそういう時はライブラリを問題あるとわかっててもバージョンアップしないほうが良いのかね?
commonsもオープンソースも否定しないが
当たり前に使うときは動作確認もソースのチェックもするさ。
オープンソース信者の皆さんが言う俺様コードを経由してcommons呼び出したりもする。
なんか不具合あってもそこだけ変えればすむようにな。
まあcommonsマンセーの人たちはどういうシステム作ってきたんだか。
252デフォルトの名無しさん:2005/08/19(金) 23:33:40
>>248
その「信頼」の根拠をどこにおくのかわかってるかいって話だよ。
同僚が書いたコードでも、必要なテストをパスしてるんなら今の状態でもOKなわけだし。

>>250の言うように宗教めいてるところはあるね、確かに。
253デフォルトの名無しさん:2005/08/20(土) 00:16:01
スレ流して読んでみたけど>>232,233,235,243,248みたいな発言する奴は要注意だね。

ちょっと事情があって今回のシステムではライブラリとか追加できない
っていうと顔真っ赤にして怒り出す奴。
別にソース公開されてるんだから組み込めば良いじゃん。
オープンソースの考え方を持つのは勝手だが顧客に押し付けんな。

StringUtilsのreplaceとStringのreplaceAllの動作の違いもわかってなくて
すっぱいバグ出しちゃった奴。
ソースちょっと確認すればわかるだろ。

ちょっとしたcommonsとかにない文字列操作とかになると
そんなの出来ません!とか言い出す奴。
出来ませんじゃなくてオープンソースにありませんってだけだろ。
そんぐらい自分で作れ。

すぐに思い出したやつを書いて見た。
全部周りに実在した奴らだ。しかもオープンソース大好きってのばっか。
オープンソースを妄信的に信じてる奴が
一番オープンソースの使い方を知らないケースが多い。
254デフォルトの名無しさん:2005/08/20(土) 00:29:36
あまりにも短絡的な決めつけをする>>253が一番の妄想野郎だな
255デフォルトの名無しさん:2005/08/20(土) 00:49:27
>>254
いや。>>253の実例みたいな奴は間違いなく痛いだろ。
実際確かにいるし。
256あぼーん:あぼーん
あぼーん
257デフォルトの名無しさん:2005/08/20(土) 00:59:47
Jakarta Commonsクックブック
http://www.oreilly.co.jp/books/4873112427/

オライリーのCommons本の邦訳が今日出るみたいだね。
258デフォルトの名無しさん:2005/08/20(土) 09:07:55
オープンソースそのものの話は他所でやってくれ
259デフォルトの名無しさん:2005/08/20(土) 12:20:59
>>253
> 別にソース公開されてるんだから組み込めば良いじゃん。

なにそれ。そうやってきたの?あんたには関係ないが
公開者からすりゃ、かなり気分悪いな。
で、バージョンアップしたら張りなおしか?

> オープンソースの考え方を持つのは勝手だが顧客に押し付けんな。
> StringUtilsのreplaceとStringのreplaceAllの動作の違いもわかってなくて
> すっぱいバグ出しちゃった奴。

オープンソース関係ねー。そんな奴はどうせ JDK も
ロクに分かってない。

> ソースちょっと確認すればわかるだろ。
> ちょっとしたcommonsとかにない文字列操作とかになると
> そんなの出来ません!とか言い出す奴。
> 出来ませんじゃなくてオープンソースにありませんってだけだろ。
> そんぐらい自分で作れ。

話の流れからして、おまえはリーダークラスの役割だろ?
おまえができることを、できない奴がいるのは当たり前。
誰でもひとつくらい得意なことはある。

できない奴の能力不足ではなく、ライブラリチームや担当を
編成・管理しないおまえの能力不足だ。
260デフォルトの名無しさん:2005/08/20(土) 12:43:04
> ソースちょっと確認すればわかるだろ。
> ちょっとしたcommonsとかにない文字列操作とかになると
> そんなの出来ません!とか言い出す奴。
こんな奴が本当に居るとしたら、そもそもプログラマとして成立してないじゃん。
commonsがあればコードを書く必要がないって言うんならともかく、実際は
commonsで賄う部分よりそれ以外の部分の方が遥かに多いんだからさ。
まぁ、VBプログラマなら、コンポーネントがないからできませんって奴が居
ても不思議じゃないけどw
261デフォルトの名無しさん:2005/08/21(日) 00:10:11
>>253
> オープンソースを妄信的に信じてる奴が
> 一番オープンソースの使い方を知らないケースが多い。
ここだけは禿同。
262デフォルトの名無しさん:2005/08/21(日) 10:42:01
流れをぶったぎって書くが、
commons-ioといえば、commons-fileuploadの1.1devで使ってるね。
263デフォルトの名無しさん:2005/08/22(月) 19:04:12
copyProperties を使うためだけに
commons-beanutils を追加しました。

今まで素で reflect 使って書いてたコードがかなりあるんだけど
やっぱ書き直した方が吉かなあ。
264デフォルトの名無しさん:2005/08/22(月) 21:05:27
今までのやつがちゃんと動いてるんならいいんじゃね?
265デフォルトの名無しさん:2005/08/22(月) 22:41:19
同意。動いてるコードを書き直すのは苦痛だ。
ただ、リファクタリングの一環として、リフレクション部分をプルアップしてみて
BeanUtilsとの置き換えが可能そうなら、置き換えてみてもいいかもしれない。
266デフォルトの名無しさん:2005/09/03(土) 00:21:04
>>187
ルーセンスと発音していたが違うかな。
ルシーンなのか。
267デフォルトの名無しさん:2005/09/03(土) 00:23:37
>>206
へぇ。
Java5になってからGenericsで型チェックできるようにパラメタライズされてないのかな。
268デフォルトの名無しさん:2005/09/03(土) 00:24:53
>>212
high burn eight
普通にハイバネートと発音したい気が。
269デフォルトの名無しさん:2005/09/03(土) 00:28:34
>>236
> あっそう。拾ったライブラリはテストしなくても信頼できるんだ。ふーん。
> 目当てのメソッド以外のクラスやメソッドが使われた時のテストや管理のリスクは無視か。
> 趣味で触ってるやつならともかく、人のコード見ないで出来る仕事ってそうはないと思うがな。
> >jarがいくつになれば気が済むんだと問いたい問い詰めたい。
> これについでの回答は?
> おめぇの趣味で一々jar入れてたら100や200個になりかねないから、

率直にMaven使えよ。
mavenのクラスパスを一つ通すだけで自動でダウンロード、自動でインストールしてくれるぞ。
270デフォルトの名無しさん:2005/09/03(土) 00:30:18
>>241
あと、mavenのほかにFatJarもつかってJarを一つにまとめろ
これらは双方ともEclipse用プラグインも用意されている
271デフォルトの名無しさん:2005/09/03(土) 00:35:15
>>253はなにか頭がバグってるな
Commonsは
Commons Sandbox以外ならかなり信用できる。
CommonsというのはJava標準APIに足りない機能を補う
ためにあるようなもんだ。
272デフォルトの名無しさん:2005/09/03(土) 00:37:21
メールアドレスの書式チェックメソッドGenericValidator#isEmail()を
使いたいがためにCommons ValidatorのJarを入れた俺はDQNですか?
273デフォルトの名無しさん:2005/09/03(土) 00:44:28
>>252
宗教といっても、何も確たる根拠も無しにオープンソースを否定して
これは使っちゃダメだあれは使っちゃダメだと
いきなり決めつけるのもかなり宗教っぽいけどね。
豚肉喰っちゃダメだ牛も喰っちゃダメだクリスマスなんかやっちゃだめだって
いってるイスラム教徒みたいな。食い過ぎれば不健康で心臓病になるけど
適度に運動しながら野菜などと一緒にバランス良く食べていれば無害どころか栄養たっぷり。

それを調べもせずにいきなりダメだって人に押しつけるのはプロジェクトの進行にかなり響く。

オープンソースを何も考えずに否定するのは暗黒時代の魔女狩りにも似ている。
何人もの大富豪の男を、男の姿に化けた女だと勝手に決めつけて殺してしまったっていう史実があるわけだ。
殺した後にそのお金が教会や国の資金源になるから陰湿にもわざとそういうことをしたってわけだ。

彼が外部のライブラリ使用を拒む理由は車輪の再発名をしてでも何もかも自分で作ってしまって
それがすべて自分でやったから周りから偉い奴だと思ってくれるだろう錯覚しているうのだろう。
あるいは、手柄を自分のものにして、自分にしかわからないようなコードをわざと書いて
そのプロジェクトをすべて自分の管理下に置いて自分の立場を維持したいという保守的な考えを持つ人間なんだろう。

274デフォルトの名無しさん:2005/09/03(土) 00:45:29
>>272
いいえ。問題なし。じゃんじゃんつかっちゃいなさい。
オープンソースなんだし。
そんじょこらのクローズドソースなバイナリよりも信用できる。
275デフォルトの名無しさん:2005/09/03(土) 11:43:33
>>267
それをやろうとするとJava5専用になる。
主要なツールはGenericsに対応したJava5対応版を出してほしい
現状だと、Java5で作っていてもツールからオブジェクトを取り出すときに結局はキャストが必要になってしまうし
276デフォルトの名無しさん:2005/09/04(日) 10:35:13
>>273
> >>252
> 宗教といっても、何も確たる根拠も無しにオープンソースを否定して
> これは使っちゃダメだあれは使っちゃダメだと
> いきなり決めつけるのもかなり宗教っぽいけどね。
周り読んでも全然誰もそんなこと言ってないんだけど。
その極端な話の飛躍の仕方が宗教っぽい。
277デフォルトの名無しさん:2005/09/05(月) 09:19:54
ていうかなんで今になってそんな古いネタを掘り起こしてるのかがわからんな。
>273
キモイ
278デフォルトの名無しさん:2005/09/05(月) 12:07:30
ところでオライリーのjakarta-commonsクックブックはどうでした?

ザッと流し読みした感じだと可もなく不可もなくかなあ。
279デフォルトの名無しさん:2005/09/27(火) 16:03:41
commons-httpclient.jar を gcj で使いたいのですが、

javax.net.SocketFactory
javax.net.ssl.SSLSocketFactory

などが gcj に対応していないためコンパイルが通りません。
しかしその部分のメソッドはプロジェクトで使用していないので
どのように回避したら良いかわかる方がいらっしゃいましたらご教授お願いします。
280デフォルトの名無しさん:2005/09/27(火) 16:59:27
単純に
・不要なのを取っ払ってコンパイル。
・ばらして1つずつコンパイル、通ったものだけを集める。
が考えられます。知らないけどSocketFactoryはなくていいの?
それよりも、なぜここでしたか
281デフォルトの名無しさん:2005/09/28(水) 20:52:12
>>280
早速のレスありがとうございます。
それを参考にzipアーカイバで使わないclassファイルを削除しましたが、
それぞれが関連し合っていてなかなかうまくいかないようです。
commons-httpclient.jarはオープンソース化されていないのでしょうか?
282デフォルトの名無しさん:2005/09/28(水) 21:42:06
>>281
そんなわけない
283デフォルトの名無しさん:2005/09/30(金) 17:34:23
CommonsじゃなくてOROなんですが
Perl5Utilのsubstittutionで\\uってちゃんと動きますか?
velocityのライブラリに入ってるバージョンで試したのですがうまくいきません。
284デフォルトの名無しさん:2005/10/04(火) 00:07:11
commons betwixtなんですが、0.5以前のバージョンでsetWriteEmptyElements(false)と同等の処理は出来ないのでしょうか?
値を設定されていないプロパティはタグ自体が出力されないようにしたいのですが・・・。
285デフォルトの名無しさん:2005/10/04(火) 02:19:24
>>278
俺的にはかなり勉強になりました。って一ヶ月も前のコメントですか・・・。

ファンクターなんてのがある事をこの本読んで初めて知ったよ。
考え方はデザパタで知ってたけど、標準的な方法があると使ってみようって気になるね。
ただ、条件式を切り出しただけのクラスとか作ってるとクラス数が爆発しそうな気も・・・。

Pridicateとかって実際に使ってる人います?
286デフォルトの名無しさん:2005/10/04(火) 04:10:03
Lispのlambda(無名関数)と同じように
Predicateとかは基本的に無名クラスで使うとよい。
287デフォルトの名無しさん:2005/10/04(火) 09:35:15
>Predeicate
結構よく使う。 基本的には無名クラスが多い。
Transfomerは滅多に使わない。 Closureは存在を忘れている事が多い。
ComparatorChainは便利。 テーブルのソートなんかで多用してる。
288デフォルトの名無しさん:2005/10/12(水) 06:56:33
formでDynaFormを使用した場合で
java.lang.Doubleやjava.mathBigDecimalなどでform-propertyを宣言して
画面からhtml:textで未入力状態で送信すると例外を発生するのは回避不可?
BeanUtilsのpopulateメソッドのエラーっぽいし、無理かな
まあ、BeanUtilsを修正するかString型に回避すればいいけど
289デフォルトの名無しさん:2005/10/13(木) 00:42:12
Commonsじゃないけど、Regexpってなんて読むの?
290デフォルトの名無しさん:2005/10/13(木) 00:54:28
>>289
「レギュラーエクスプレッション」の省略形だけど、別の読み方があるのかな?
カスタムタグのTLDファイルの「rtexprvalue」も悩ましい。
「Runtime Expression Value」の省略形なんだけど。。。
291デフォルトの名無しさん:2005/10/13(木) 23:44:14
俺はリジェックスピーって読んでるよ、心の中で。
もちろんLispのS式はセックスピー
292デフォルトの名無しさん:2005/10/14(金) 00:03:03
僕は「れぐえくすぷ」って呼んでます。
293デフォルトの名無しさん:2005/10/14(金) 00:36:48
僕は
れぐいーえっくすぴー
294デフォルトの名無しさん:2005/10/14(金) 05:12:21
>>293
ヽ( ・∀・)人( ・∀・)ノ ナカーマ
295デフォルトの名無しさん:2005/10/14(金) 14:44:10
ttp://jakarta.apache.org/
が落ちててDTDの読み込みに影響出てます。
同じ現象の人います?
296デフォルトの名無しさん:2005/10/14(金) 14:47:49
携帯からだと見れてしまいました。
アクセス制限かルーターの異常か?
スレよごしすみませぬ。
297デフォルトの名無しさん:2005/10/14(金) 15:05:15
DTD宣言を実際読みに行くのってエディタかなんか?
だったらローカルに落としたほうが手っ取り早いと思われ。
298デフォルトの名無しさん:2005/10/14(金) 15:41:14
>>297
DTD 宣言を含む XML を編集するときにエラー扱いにされてうざい、ってことじゃないの?

俺も解決法があったら聞きたい。
299デフォルトの名無しさん:2005/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デフォルトの名無しさん:2005/10/15(土) 17:57:45
>>289
regexp
レゲックス
レゲックス婦
れじぇっくす
レジェックスプ
利げっくす(プ
りじぇくす(プ

自然大数の底exp()関数よりもじってレグネスクポーネント
レグネクスポネンジャル
レグネクスポ
レグネクスプ
レグスプ
レジェクス
リジェクス
レジェバイプ
レジェザップ
リジェザップ
レジェズープス これではRege XOOPS?
レジェ・タイムズ・ペッ!
レジェタイプ
レジェペケポン
リジップス
リジェップス
レジェンプス


301デフォルトの名無しさん:2005/10/15(土) 17:59:02
>>289
rtexprvalue
アーテフプリヴァリュー
ラリパリュー
ライプリュー
レフプライヴァリュー
レプリャリュー
レッズファリュー
302デフォルトの名無しさん:2005/10/15(土) 19:47:31
>>267
つうか、カワイイとかかわいくないとか
どっちにしてもこんな掲示板で書いたら
月曜日その子に会わせる顔が無いよ
かわいくないと書いた時はまずいのわかっているし
カワイイと書いたなら意識されるだろうし・・・
掲示板でそんな事聞くなよ
303デフォルトの名無しさん:2005/10/15(土) 19:49:22
>>302
いや、多分このスレに書く分には大丈夫だと思うぞw
304デフォルトの名無しさん:2005/10/15(土) 19:51:08
誤爆?
305デフォルトの名無しさん:2005/10/15(土) 19:51:32
>>302
オレは相談にのるぞ。
306デフォルトの名無しさん:2005/10/15(土) 19:55:58
スマンソ 
ようするに、SEXの締めをクンニ逝きっていうのが 「いみあるのか?」っていうことか
307デフォルトの名無しさん:2005/10/15(土) 20:33:07
わたしの彼氏も風俗にいったときはすごいショックだったけど
なんか、向こうも仕事だからすごい事務的らしいよ。
わたしは絶対行ってほしくないとまではいわないけど、
行くならわたしにはいわないでほしい・・・
308デフォルトの名無しさん:2005/10/15(土) 20:36:16
>>307
Commons つまり共通の悩みってことか。
言わなかったら浮気だと勘違いするだろ。
スレ違いだよ。
309デフォルトの名無しさん:2005/10/15(土) 20:40:02
誤爆適用スレってしってるか?
今日は当たり日なんだろうか・・・
310デフォルトの名無しさん:2005/10/15(土) 21:01:50
>>307
アホか、風俗はめっちゃフレンドリーやっちゃうねん。
ソース読めとかググれとか氏ねとか言わないからな。
これで有料じゃなきゃ最高なんだけどな。
311デフォルトの名無しさん:2005/10/15(土) 21:07:08
事務的フレンドリー
312デフォルトの名無しさん:2005/10/15(土) 23:17:53
事務的なフレンドリーと心からのおざなり、どっちがいいかっちゅうねん。
313デフォルトの名無しさん:2005/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デフォルトの名無しさん:2005/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デフォルトの名無しさん:2005/10/19(水) 12:43:45
>>314
ありがとうございます!
jakarta-oro-2.0.8.jarだと無事いけました。
velocityに入っていたやつには未実装だったのですね...
316デフォルトの名無しさん:2005/10/19(水) 15:36:50
log4jのLogクラスで行番号が出せるけど、行番号なんてどうやって出しているのだろうか
Cのプリプロセッサだけの芸当かと思ってた
317デフォルトの名無しさん:2005/10/19(水) 16:19:04
>>316
せっかくソースも配布されているので見てみればよいのでは。



見たらかなり力技だった。Throwable#printStackTraceの出力を解析してた。
(org.apache.log4j.spi.LocationInfo)
318デフォルトの名無しさん:2005/10/19(水) 16:33:52
>>316
マルチ
319デフォルトの名無しさん:2005/10/19(水) 18:42:42
マルチさんのおかげて勉強になった
火のないところでthrowしてるってこと?
ロギングにそゆー力技いれるってjakartaはやっぱすげーな世界が違う
俺だったら尻込みする
320デフォルトの名無しさん:2005/10/19(水) 20:11:35
>>319
jakarta っつーより、作ったのは IBM だろ。
すげーなっていうのは今だにバカっぽい実装してる嫌み?
行番号なんか簡単に取れるだろ。

new Exception().getStackTrace()[0].getLineNumber()

メソッド名やどこから呼ばれたかも取れる。
ただ、正常系でこんなもん使ってる奴がいたらうんこだけどな。
321デフォルトの名無しさん:2005/10/19(水) 21:03:42
>320
いやいや違う、ロギングってオプション的な機能だから
変わった事やって主処理に影響でるなんてまずいんで
コードの質に自信がないとできないなよなと思って

言ってる事伝わらなそうだ、とにかくjakartaに嫌味なんて滅相もない、
白状するとcommonsのソース読んでからかなりパクってます。

自分で何言ってるかわかんね、まとまんね、もういい送信!今目をつけてるのbcel!
322デフォルトの名無しさん:2005/10/19(水) 21:38:46
>>320
これいいただきん
323デフォルトの名無しさん:2005/10/19(水) 21:45:09
>>320
これってjavaのコンパイルオプション関係なしに取得可能?
324デフォルトの名無しさん:2005/10/19(水) 23:16:50
>>323
当然
> javac -g:none Hoge.java
とかすると取得不可。
325デフォルトの名無しさん:2005/10/19(水) 23:27:04
>>324
ということは、企業の運用されているマシーンで、-g:noneなしにコンパイルしたクラスなら
取得可能ですね。
これいただき。
326デフォルトの名無しさん:2005/10/20(木) 00:09:29
>>325
書いたら喜んで使い出すが奴がいそうだから、わざわざ
うんこって書いたんだが。使うんなら、ちゃんと例外コストを
考えて無効にできる機構を用意しろよ。

それを持ってるのが log4j だけどなw
327デフォルトの名無しさん:2005/10/20(木) 00:18:02
>>321
jakarta のコード書いてる奴もただの人だろ。
見てるうちに、あほなコードがわんさかあることに気づく。

BCEL 見るなら、CGILIB、Javassist、JBoss4 のコード見てみ。
CGILIB のコードは美しい。JBoss はやってることがすごい。
328デフォルトの名無しさん:2005/10/20(木) 00:23:54
>>320
Thread.getStackTrace() した方が。1.5 以降だけど。
329デフォルトの名無しさん:2005/10/25(火) 11:57:00
log4jってなんでクラス毎でlog4j用のfieldを用意しなければ行けないの。
ログなんだから、普通スタティックメソッドオンリーだろ。
なんだよその仕様
330デフォルトの名無しさん:2005/10/25(火) 12:19:40

J
331デフォルトの名無しさん:2005/10/25(火) 12:30:07
 │
 O
 G
 4
 J
332デフォルトの名無しさん:2005/10/25(火) 14:04:07
↑あんた最高
333デフォルトの名無しさん:2005/10/25(火) 23:52:17
>>329
じゃ、Log4j だけじゃなく、commons logging も JDK のロガーも
全部だめなんだな。

とりあえず、おまいがオブジェクト指向の利点が、さっぱり
分かってないのは理解できた。それが分かるまで
おまいは static メソッドの作成は禁止だw
334デフォルトの名無しさん:2005/10/26(水) 02:00:51
オブジェクト指向の利点がサパーリわからんので、staticメソッドオンリーでいきまつ
335デフォルトの名無しさん:2005/10/26(水) 22:05:52
>>333
わかってないやつが書きそうなもんだな。
具体的に書いてみろ。Cプログラミング屋さん
336デフォルトの名無しさん:2005/10/27(木) 00:35:43
>>335
・プロバイダーフレームワーク
・インスタンス数の管理が可能
・実装クラスが作成時点で存在している必要がない。
・もちろん多態
・設定により実装クラスが変わる

不特定多数のシステムに提供するなら、上記のような拡張性・柔軟性は必須だ。
閉じたシステムしか書いたことない奴には分からんかもしれんな。
昔は static メソッドで書かれた俺様ロガーがたくさんあったかも
しれんが、それをオープンで公開すれば、なぜ static がだめか
なぜ要求に耐えられないかが分かるだろ。

で、分かってるお前の意見を教えてくれ。
分かってないだろw
337デフォルトの名無しさん:2005/10/27(木) 02:39:54
>>336
作るものに依存する。
338デフォルトの名無しさん:2005/10/27(木) 16:25:22
XMLの読み込みに特化したい場合、
Digester使うのと、XmlBeans使うのと、どちらが効率的ですか?
Digesterの解説はあちこちあるんですが、後者は自分には解説がわかりにくい。。。

XMLファイルを渡してやると、自動的にBean作ってくれたりするとありがたいんですが。
339デフォルトの名無しさん:2005/10/27(木) 17:51:29
ASF の産物じゃないですけど Relaxer 使ってみるのも手ですよ。
XML Beans が生成するクラスはちと複雑ですけど、
Relaxer が生成するクラスはより POJO ライクです。

個人的には読み込みだけなら Digester が一番だと思ってます。
ルールを XML に書けるのが便利なんで。

ルールがある程度以上複雑になる場合
(格納クラスを手で書く手間 > スキーマを書く手間)は
スキーマ切って Relaxer 使ってます。

より複雑な検証が必要な場合は XML Beans です。
340デフォルトの名無しさん:2005/10/27(木) 19:27:32
適当なオブジェクトをbetwixtで書き出してみて
それがしっくりくるならdigesterで足りる
じゃなきゃ俺もRelaxerをすすめる
Relaxerは頭に入れやすいよ
341デフォルトの名無しさん:2005/10/27(木) 23:12:14
>>338
JAXB は? 定義いるけど。
342デフォルトの名無しさん:2005/10/28(金) 08:21:46
digesterはgetしたものそのままsetしたい時に発狂する
XML Beansはさくさくいくのは困難、最初は普通に発狂する
343デフォルトの名無しさん:2005/10/28(金) 09:33:22
digesterは設定読み込みが目的だから、setにはbetwixtが向いてるんでは
344デフォルトの名無しさん:2005/10/28(金) 10:07:39
>>336
重症・・。
ちがうんだよ。その機能はstaticメソッドでも可能。俺はそうしている。
statcktrace使えば、さかのぼって呼び出し元が完璧にわかるから、
すべて実現できるのstaticで。
だったら普通staticで提供だろ、util関係は基本全部static実装だし、
そうするように設計すべし。
345デフォルトの名無しさん:2005/10/28(金) 10:22:25
static メソッドになった場合、今までと同様の情報を出力するには
確実に今までよりパラメータが一つ増えるんだが、
それをわずらわしく感じないなら、それでいいんじゃないかな。
俺は勘弁してほしいが。

if(logger.isTraceEnabled(){
  logger.trace("なんやら", t);
}



if(Log.isTraceEnabled(this)){
  logger.trace(this, "なんやら", t);
}
346338:2005/10/28(金) 11:12:59
>>339-343
アドバイスありがとうございました。

とりあえずDigesterで基本的な動きは確認してみました。
XML読み込んで、それをマップしたObjectからのgetだけが目的なので、
事足りそうではありますが、
Relaxerの評判も良いようなので(確か国産ですよね?)、こちらも勉強したうえで、
どっちが自分の目的に合うのかを判断してみることにします。
347デフォルトの名無しさん:2005/10/28(金) 11:21:37
>343
親をgetしてカレントのsetへってやりたくなんなかった?俺だけ?
もしできるの?できそうでできないのがすっごい発狂したんだけど

>338
digesterは既存のものにあわせるとしんどかった
digester前程で作ればすごい楽だと思う

>345
勘弁同意
Logger.instance(this).log("えらー")っての見たことあるこれは辛かった
348デフォルトの名無しさん:2005/10/28(金) 12:24:39
>Logger.instance(this).log("えらー")
うわ嫌すぎる...
staticにすることで手間が増えるんなら、オブジェクトでいいじゃんよ。
しかも元からあるんだから、いちいち書く手間いらないし。
349デフォルトの名無しさん:2005/10/28(金) 12:47:33
Logoer の話題が出たついでに便乗質問。

private static Log log = LogFactory.getLog(Hoge.class);
private Log log2 = LogFactory.getLog(this.getClass());

この二つのメリットとデメリットって何ですか?
前者を使えと言われて理由も聞いたような気がするんですが忘れてしまいました。on_
350デフォルトの名無しさん:2005/10/28(金) 22:37:08
>>349
おまいも >>344 と同じくらい分かってないな。

Hoge.class を渡すのと getClass() の違いはなんだ?
例えば、後者はそのロガーの getter があったとしたら、
Hoge のサブクラスはそれを自分のクラスのロガーとして利用できる。

どっちもログインスタンスはキャッシュされるが
上記のような理由がない限り前者だろうな。
351デフォルトの名無しさん:2005/10/29(土) 00:15:37
>>349
後者はstaticメソッドから呼び出せないなり
352デフォルトの名無しさん:2005/10/29(土) 10:04:10
>>348
だからてめーらほんととわかってないな。ソースみろ!
thisなんかしなくても、結局スタックつかって呼び出し元特定してるの。
いいか、thisはまったく考えなくていいんだよ。ほんと疲れるは。
もうレスしないから、あきらめないでちゃんと考えろ。
あきらめた時点で一般人と同じだよ。結局使う側の人間さ
353デフォルトの名無しさん:2005/10/29(土) 12:09:11
>>352
使う側の人間っておまえもだろw
俺様フレームワーク作って喜んでたらもっとバカだけどw
っつかスタックトレースいちいち解析してんの?
354デフォルトの名無しさん:2005/10/29(土) 14:16:14
全ログaspectで後付けだってできるんだし、方法なんて探せばいくらでもでるでしょ
主観だけどlog4jだと助かる。commons-loggingだと更に楽
間違いの起き難い作りだと思うよ。
355デフォルトの名無しさん:2005/10/29(土) 14:37:55
>>354
どうせ、log4j 使うんだろ?
何のために commons かます?
パフォーマンスがわずかに落ちるし、シンプルでなくなるし、
機能的に log4j から他のロガーに変えるなんてありえん。

あー、ちなみに俺はいくつかのシステムで
commons logging + log4j を採用してきた。
今は log4j だけにしとけば良かったと思ってるし、
今後は log4j だけでいく。
356デフォルトの名無しさん:2005/10/29(土) 14:54:56
log4jってファイルの保存先が未定義の場合とかって
コンソールに表示されたっけ?
log4jでConsoleAppender使えばいいかもしれないけど
別にcommon-loggingでもlog4jでもどっちでもいいんじゃない?
>>355の言うとおり最終的にはlog4jになる場合多いし
java.util.loggingってどうなの?
357デフォルトの名無しさん:2005/10/29(土) 18:37:26
>355
前に、呼びだしてる奴等のデータ欲しくて
1回こっきりのLogFactory作って片っ端からbetwixt.BeanWriterで吐かせた
便利だと思った。commonsは力技に屈してくれる
あと移動が楽、考えて見るとこれといった理由は無い。
確かに運用ではlog4jしか使わないんだけどね
358デフォルトの名無しさん:2005/10/29(土) 18:46:19
SAPの吐くログと一緒に管理したいという要望があって
Commons Logging用のSAPのLoggerを作ったことがある。
359デフォルトの名無しさん:2005/10/29(土) 21:25:51
>>357
>>358
なるほど。でも、log4j のアペンダでもいいよな。

っつーか、俺は log4j の MDC の便利さにはまった。
リクエストヘッダやリクエスト、セッションの内容を全部 MDC に
セットしとけば、log4j の出力設定でなんでも出力できる。

運用開始後に客がブラウザの種類とか、リモートIP、ログインIDを
ログに出せとか言われても、設定だけで可能。
360デフォルトの名無しさん:2005/11/01(火) 00:02:01
>>352
スタックフレームの取得ってかなりコスト高いんだが。
頻繁に呼び出すログ出力処理でそんな事やるのは愚行ではないかと。
361デフォルトの名無しさん:2005/11/01(火) 00:34:37
ログって、見てはいるけど、見るだけじゃ勿体無いよな。
何が勿体無いって?
入力と出力、分かっちゃいるけど、忘れちゃう基本的な試験にもでてくる基本中の基本。
入力がてんでばらばらの出力を見てたって、整理つかない、見えるもんも見えない。
意図的に入力を加えて、その出力LOGを見るのがトラブルシュートの基本中の基本。
入力と出力、バカにしちゃうけど、バカにできない、
これで少しはトラシューも、楽リマクリスティー♪
362デフォルトの名無しさん:2005/11/02(水) 20:25:29
log4jでgetLogger("aaa.bbb.ccc")ってやって
aaa.bbb.ccc.ddd.eeeのパッケージだけログを出したくないときってどうすればいいのでしょうか。
363デフォルトの名無しさん:2005/11/02(水) 20:50:41
NullAppender
364デフォルトの名無しさん:2005/11/02(水) 23:55:22
出したくないといいつつ、エラー時くらいは出したいのではと勝手に想像すると
aaa.bbb.ccc.ddd.eeeを新規にカテゴリ定義してレベルをFATALにする。
365デフォルトの名無しさん:2005/11/03(木) 00:57:46
Enumratar用のユーティリティーって何かありますか。
366デフォルトの名無しさん:2005/11/03(木) 01:07:33
toString系使用していますか?いまいち期待道理に出ないです。
System.out.println(new ToStringBuilder(request.getAttributeNames(), ToStringStyle.MULTI_LINE_STYLE));
をしても何もでないです。
367デフォルトの名無しさん:2005/11/04(金) 13:10:21
reflectionToString() だけ使いまくってる。
ユニットテストクラスで、値確認する時とか。

他のは結局手で書いた方が早くなったので
以来使わなくなりました。
368デフォルトの名無しさん:2005/11/04(金) 23:58:59
>>367
Commonclipse のほうが早くないか?
369デフォルトの名無しさん:2005/11/05(土) 02:35:29
>>368
Commons4E
http://www.jiayun.org/mediawiki/index.php?title=Commons4E

これとどっちがいい?
370デフォルトの名無しさん:2005/11/05(土) 04:11:19
>>369
Field selection is the main difference between Commonclipse
and Commons4E currently. (Commonclipse uses all fields)
371369:2005/11/05(土) 11:36:27
>>370
ありがとー。
アホなのでExcite使いますた。

>現在、フィールド選択はCommonclipseとCommons4Eの主な違いです。
>(Commonclipseはすべての分野を使用します)

全フィールド使う方がいいのかな?
372デフォルトの名無しさん:2005/11/05(土) 16:01:11
>>371
toString ならいいんじゃないか?

で hashCode と equals には使ってないんだな。
使ってたら、なぜ選択する必要があるか分かると思う。
まー、手修正すんのと GUI で選ぶのもどっちもどっちだけど。
373デフォルトの名無しさん:2005/11/10(木) 22:34:15
374デフォルトの名無しさん:2005/11/10(木) 22:48:40
わかりにくいネタはやめてくれ。
375デフォルトの名無しさん:2005/11/14(月) 23:18:35
【玄人】プロジェクト管理ツールApache Maven【2.0登場】
http://pc8.2ch.net/test/read.cgi/tech/1131976988/
376デフォルトの名無しさん:2005/11/15(火) 14:28:23
>>222
> リフレクションは、重いという弊害の他に、ダウンキャストの危険性も多い。

そこでGenericsを。
BeanUtilが対応していればだが
377デフォルトの名無しさん:2005/11/15(火) 14:32:57
>>229
> closeQuietelyだけだったらさすがに環境構築のたびにクラスパス通して
> インポートしてってよりは自分とこの共通クラスにコード書くね。
> だって誰が書いたってああなるでしょ。
> 実際ほとんど同じのcommons自体知る前に書いてたし。
> 結局commons-ioかよとか思わないと思うけどね。
> 別にたいした手間じゃないんだけどクラスパスが無駄に多いのは好きじゃない。

Apache Mavenを使えばクラスパスの設定もいらんぞ。
やってみいよ
378デフォルトの名無しさん:2005/11/15(火) 14:54:50
>>276
実際このCommonsのこれ使っちゃ駄目
これ使っちゃ駄目とか言いだすDQNいるんだな〜これが。
それだけでなくある程度プログラムができあがってくると
多少問題があってもソースコードを弄ることを拒否しようとする。
リファクタリング拒絶というトンデモ君が。
一度こうなってしまったら前へすすむしかない、みたいな。
その様は何人もの犠牲者を出してしまった軍隊のようだ。
犠牲者を出してしまったんだからもう目的地に行かなくては
犠牲者に申し訳が立たないといってデスマーチに陥る。

実際徹夜ばっかになったプロジェクトでしたが。
379デフォルトの名無しさん:2005/11/15(火) 14:57:27

>>267
レスにたいして>>302のようなレスをする意味が
激しく解らない

>>302は誤爆?
380デフォルトの名無しさん:2005/11/15(火) 15:08:21
>>370
なーるほど、
ただしCommonclipseプラグインは
未だにEclpse3.1に対応していないというバグが
直っていないのでパス
381デフォルトの名無しさん:2005/11/15(火) 15:09:22
>>309
> 誤爆適用スレってしってるか?
> 今日は当たり日なんだろうか・・・

それってどうやって
誤爆を受けているのか確認できる?
382デフォルトの名無しさん:2005/11/15(火) 15:18:42
Commons FileUploadはServletにしか対応していないのか・・・・

普通にデスクトップJavaや
コマンドラインJavaアプリケーションで
シェルのようにFTPサーバにftp, sftpまたはSCP経由で
ファイルのアップロードするということをやってみたかったんだが。
383デフォルトの名無しさん:2005/11/15(火) 15:32:33
よくみたらFTP接続できるのは
Commons Netか!
orz
384デフォルトの名無しさん:2005/11/15(火) 19:07:46
Commons NetのFTP接続ってファイアウォール越しに
接続する機能は無いのか?
scpかsftpでポート22経由で接続したいのだが・・・。
対応してるプロトコルをみるとsshが見あたらない。
ということは無理か?
385デフォルトの名無しさん:2005/11/15(火) 23:45:54
SOCKSが使えるんでない?
もちろんsshのDynamicForwardが前提。
386デフォルトの名無しさん:2005/11/18(金) 23:35:40
Velocityを覚えたからAnakiaに手を出そうとしたらAntをまだ覚えていなかった。盲点。
ライブラリじゃなくてアプリのOSSで俺は貢献してやるぜ!
387デフォルトの名無しさん:2005/11/22(火) 13:39:32
Antは簡単だからいいよ。

Velocityより簡単かと。
388デフォルトの名無しさん:2005/11/22(火) 14:00:41
>>387
比べるモノなのか?
389デフォルトの名無しさん:2005/11/22(火) 14:12:55
ValidatorとかConfigurationsって使えるんだね。

ConfigurationはResourceBundleの代わりとして使えそう
390デフォルトの名無しさん:2005/11/23(水) 01:00:38
水を挿すようで悪いがたいていResourceBundleで事足りる
391デフォルトの名無しさん:2005/11/23(水) 02:09:55
気がついたらlibディレクトリがゴチャゴチャになってしまったので
整理したいのですが、Commonsとかそれぞれのjarの依存関係って
どうやって調べればよいのでしょうか…
とりあえずどこからも呼び出されてないjarだけでも外したいのですが…
392デフォルトの名無しさん:2005/11/23(水) 19:04:57
ドキュメントに書いてあるので嫁。
つーか大した量じゃないんだし、commonsぐらい全部入れちゃっても (ry
393デフォルトの名無しさん:2005/11/24(木) 12:42:07
>>391
Apache Mavenを使った方が楽だと思うんだけどなあ。
EclipseのMaven Repo Searchプラグインを使って
必要だとわかったJARの<depedency>タグをクリック一発で作って
それをpom.xml(Maven1.xではproject.xml)の<dependencies>タグの
内側に貼り付けて、
 mvn install
を実行し
Eclipseを使っているなら
 mvn eclipse:eclipse
を実行してEclipseプロジェクトにJARのパスを自動的に追加して
またエラーが出ることを確認してしらみ潰しに、一個一個見てゆき
再びMaven Repo Searchを使って同じ事を繰り返すってやりかたで。

依存関係を調べる方法の一つとして
Eclipse3.xのcal Hierarchy(呼び出し階層)を調べる機能で
このクラスはどのクラスに必要とされているか、
あるいは逆にこのクラスはどのクラスを使っているかを調べることができる。
ただしJarについては(ry
リストアップされるエラーメッセージをみながらこのJARが
必要だあのJARが必要だと調べながらあれこれやることができる。

394デフォルトの名無しさん:2005/11/24(木) 12:42:49
>>390
Configurationはそんなに使えなかった?
それとも面倒だからやらなかっただけ?
395デフォルトの名無しさん:2005/11/24(木) 12:50:08
気がつくとCommons Mathとかの
リポジトリがCVSからSubversionに入れ替わってるね。
ApacheもとうとうSubversionを導入し始めたか。

他のプロジェクトもすべてSubversionに以降しきっているのかな?


396デフォルトの名無しさん:2005/11/24(木) 13:11:27
>>395
気づくの遅すぎ。
397390:2005/11/24(木) 21:50:13
>>394
使えないというより、ResourceBundleで十分だった。
それなら誰もが知ってる方がいいよね。
Tomcatレベルの複雑な設定が可能なアプリケーションには向いてるんじゃない?
398デフォルトの名無しさん:2005/11/24(木) 22:00:43
そもそもResourceBundleって、メッセージとかラベルの文字列外部化だから
Configurationほど色々できる必要が殆ど無いと思われ。
キーを階層構造にしてオブジェクトに格納できたところで、大して意味無いし。

小面倒な設定ファイルとか、シリアライズしたいとかならConfigurationの出番だろうけど。
399デフォルトの名無しさん:2005/11/24(木) 22:09:23
Configurationで、i18nってできるの?
ごめん、確認しないで聞いてる。。。
400デフォルトの名無しさん:2005/11/25(金) 10:06:40
ResourceBundleで配列のメッセージリソース管理できたらなー
401デフォルトの名無しさん:2005/11/25(金) 12:17:01
>小面倒な設定ファイルとか、シリアライズしたいとか
スキーマ切ってXMLでやりとりした方が楽になる。
402デフォルトの名無しさん:2005/11/26(土) 01:23:36
Commons-devのメーリングリストに参加して
メール読んでるんだけど、
Java Genericsに対応したCommons Collectionって
すでにあるんだね。いまのところSourceForge専用だけど。
そのうちCommons Collectionに対応させてゆくらしい。

Tim,

It's already been done (http://collections15.sourceforge.net/). Hopefully
we'll finally figure out how we're going to bring this code (or some version
of it) into our codebase. For now, if you need generic support you can use
the sourceforge project.

James

-----Original Message-----
From: Tim Roberts [mailto:[email protected]]
Sent: Friday, November 25, 2005 6:05 AM
To: 'Jakarta Commons Developers List'
Subject: Making Commons Collections Generic Enabled

Are there any plans to make commons collections generics (as in JDK 1.5)
enabled? If not I would be happy to do this. Tim.


-- This message has been scanned for viruses and dangerous content by MailScanner,
and is believed to be clean. MailScanner thanks transtec Computers for their support.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected] For additional
commands, e-mail: [email protected]
403デフォルトの名無しさん:2005/11/29(火) 20:29:31
404デフォルトの名無しさん:2005/11/29(火) 20:31:04
BeanWriterって便利ですね。
BeanUtils系で使用される、ネストで出力できるライブラリってないですか。

$form.property1.name="commons"

のような感じで。
BeanWriterもいいけど、xmlより直感的でわかりやすいです。
405デフォルトの名無しさん:2005/11/30(水) 20:04:22
Velocityって環境によってコメントの解釈が違ったりしないか?
#*
## こめんと
#hogeMacro($hogehoge)
#if( $hage )
ほげはげ
#end
*#

こんな感じのコメントつけてると、一番上の #* の部分が表示されたり、最悪 ## 以外のコメントが利かなかったり・・・
406デフォルトの名無しさん:2005/11/30(水) 21:33:11
環境によるとは?
407デフォルトの名無しさん:2005/11/30(水) 21:34:57
>>405
バグはあるかも知れんね
けどテンプレファイルにそんなにコメントつけることなんてある?
408デフォルトの名無しさん:2005/11/30(水) 22:35:55
>>405
ブロックコメントの中にコメント入れないほうがいいよ
409デフォルトの名無しさん:2005/12/02(金) 16:20:38
>>404
ほかは知らないけどそれはほしいね。
velocityもstrutsもibatisも xxx.yyy.zzz 表記だから、
ネスト形式のほうが直感的でわかりやすいかも。
410デフォルトの名無しさん:2005/12/02(金) 21:55:33
VelocityでXMLを出力する場合に上手いやり方ってあります?
firstChildとかやってくのは、ちょっと違う気がするです。
411デフォルトの名無しさん:2005/12/03(土) 04:11:59
>>406
CVS使って開発してるから違うのはJVMとOSのバージョンくらいしか思いつかないんだが、
自分のPCで大丈夫だと思っていたものが他の環境では上手くいかないとか

>>407-408
仕事で使ってるとマクロ丸々コメントしたりして、その過程でマクロ内に入れてるコメントに引っかかったりするんだ。
つかVelocityは仕事で使うもんじゃないな。
412デフォルトの名無しさん:2005/12/03(土) 13:54:54
じゃあなに使うの?
413デフォルトの名無しさん:2005/12/03(土) 15:40:10
>>403
っていうかJakarta Commons Langって翻訳が全然すすんでないな。
最後に編集したのがこれかい

$Id: ArrayUtils.java,v 1.1.1.1 2004/02/13 10:02:05 hioki Exp $


hiokiって誰だ?
姓名がいおき?
414デフォルトの名無しさん:2005/12/03(土) 15:46:18
>>405
そんなのは初めて聞いたぞ。
っていうかそもそも*なんて普通つかうか?

>>410
新規にXMLファイル作るなら
簡単だろ。
独自のオブジェクト作ってしまえば
かなり楽だろ。
独自のクラスで作られたオブジェクトを
newしてそれをListにぶちこんでから
Velocityのputにぶちこんで
あとはVelocityファイル側で
#foreachを使ってlistにぶち込まれた
オブジェクトを取り出すだけ。
やり方はマニュアルとかに書いてある。
ググって見ても簡単でいいサンプルもあった。

>>411
普通に仕事でVelocity使ったんだが。Velocityファイルにコメントなんて
一切書かないが。XMLを自動生成するならコメントは<!-- -->だな
XMLファイルを自動生成するためにVelocity
使ってコード書いて納品したよ。そのシステム、今でも動いている。
415デフォルトの名無しさん:2005/12/03(土) 21:32:07
velocityよりfreemarkerの方がいい。
416デフォルトの名無しさん:2005/12/04(日) 09:28:41
>>413
文句言うなら自分でやれよ。
417デフォルトの名無しさん:2005/12/05(月) 18:34:53
FreeMaker はタイプ量が増えるのでやだ。
< と > で囲うことに魅力が感じられない。
418デフォルトの名無しさん:2005/12/11(日) 02:13:16
あっははは
これだからJakarta信者は。
419デフォルトの名無しさん:2005/12/11(日) 02:23:36
Velocityは人気が高いからな
ELでいいじゃん
420デフォルトの名無しさん:2005/12/11(日) 02:29:28
Velocityで質問。
配列のリストをVelocityContextにlistOfArrayとして入れたとするでしょ。
#foreach($array in $listOfArray)〜#endで中身の配列は取れるけど
$arrayの各要素が#foreach($object in $array)〜#endで、
それどころか$array[0]でも取れないのはどうすればいいんかね。
421デフォルトの名無しさん:2005/12/11(日) 02:34:05
velocityCountとかいう内部変数があるよ。
デフォルトは1からだが、0からに変更することも可能。
422420:2005/12/11(日) 02:50:00
>>421
質問内容が伝わってないようだから改めて書く。
下のような例の場合 1 と 4 が出力されてほしいがそうならない。foreachで受けた
変数が配列の場合、どういう表記をすればその配列の中身を取り出せるのかね。

Java側
List listOfArray = new ArrayList(); listOfArray.add(new int[] { 1, 2, 3, }); listOfArray.add(new int[] { 4, 5, 6, });
VelocityContext context = new VelocityContext(); context.put("listOfArray", listOfArray);

Velocity側
#foreach ($array in $listOfArray) ## $listOfArrayの各要素は取り出せる。
$array[0] ## $array の各要素は取り出せない。
#foreach ($object in $array) ## foreach でもダメ。
$object
#end
#end
423420:2005/12/11(日) 02:52:36
> 下のような例の場合 1 と 4 が出力されてほしいがそうならない。

下のような例の場合 $array[0] に対応した箇所で 1 と 4 が出力されてほしいがそうならない。
424デフォルトの名無しさん:2005/12/11(日) 02:59:26
プリミティブ配列だからでは?
Integerで出来ない?
425デフォルトの名無しさん:2005/12/11(日) 03:02:29
Integerでも無理
426デフォルトの名無しさん:2005/12/11(日) 03:04:54
#foreach( $ref in arg ) statement #end

使い方:

* $ref - 最初の変数リファレンスは、リストの項目です。
* arg - リストのリファレンス(つまりオブジェクト配列/コレクション/マップ)、 配列リスト、範囲演算子のいずれかです。
* statement - 上記で arg と示されたリスト内にある、 有効なアイテムの分だけ出力する内容です。 この出力は有効なVTLなら何でもよく、ループの繰り返し毎に処理されます。

ドキュメントを見ると出来るはずなのにな。

#{array[0]}は試した?
427デフォルトの名無しさん:2005/12/11(日) 03:07:21
#{array[0]} もダメ。
でも配列のリストでなく、リストのリストならうまくいくことは確認している。
428デフォルトの名無しさん:2005/12/11(日) 06:33:17
画面ばっかり作っていて
#foreach( $arrays in $beans.samplearray )
#foreach( $array in $arrays )
#foreach( $sample in $array )
$sample
#end
#end
#end
みたいな事やってたから出来ると思うが・・・リストのリストだったのかな

$array[n] はできないよ。 #set( $sample = [] ) みたいにカラのArrayListオブジェクトを作ることは出来るけど・・・
配列の中身取りたかったら、#foreachでまわすか、リストにして $array.get(n) のかたちで取らないといけないんじゃなかったか。

#foreach でまわせないのは・・・
new int[] { 1, 2, 3, }
ってやってるけど、3つなら3つって指定してやらないといけないとか

しかし long の数値が if で比較できないとか色々不便だな。
#if( "$longvalue".equals( "0" ) ) みたいなことやってる。悲しすぎる。
ああ、$math 使えばよかったか・・・どっちにしろ長く分かりにくくなるんだよなぁ。
429デフォルトの名無しさん:2005/12/11(日) 15:11:00
>>426を見るとオブジェクト配列は可能ってあるけど、何が可能なんだろうな
430デフォルトの名無しさん:2005/12/11(日) 15:20:04
あれ?俺は普通に出来たが・・・ArrayListにint[]
431デフォルトの名無しさん:2005/12/12(月) 14:20:24
>>403
こんなところで笑ってないで、フィードバックしる。
432デフォルトの名無しさん:2005/12/12(月) 14:33:17
>>420-430
ListToolを使ってみたらどう?
Velocity Tools 1.2 (最近リリースされた) 以降でないとだめだけど。

ttp://jakarta.apache.org/velocity/tools/javadoc/org/apache/velocity/tools/generic/ListTool.html
433デフォルトの名無しさん:2005/12/13(火) 16:03:56
Configurationsって仕様見ると超便利なのに
バグが多すぎだなorz
プロパティファイルが更新されると同時に更新されたことを
自動的に読みとってくるリロードストラテジークラスを
使ってみたのにプロパティファイルを更新しても全然リロードされなかった。
クラスパスが通っているところにファイルを置いてもうまく
いかないみたいだ。これって最悪。Hibernateの設定ファイルを
管理しようと思っていたのに。
しかも読み込んだ設定ファイルを保存するsave()メソッドもちゃんと機能しない。
なにやらJavaプログラム実行ディレクトリを基点とした
絶対パスを指定しないとうまくいかないようだ。save()メソッドを実行する前に
setBasePath()またはコンストラクタで絶対パスを指定するか、save()メソッドの
引数に絶対パスを指定するかしないと変更が反映されないようだ。
これもクラスパス上に置いただけではまったく糠に釘出しのようだ。

それでも正確に反映されないときがある。それにはク意図的にコンストラクタで
newしないといけないようだ。

ということで現状のConfigurationには期待に反して不満が多すぎ。
XMLファイルの読み書きは楽だと思ったけど。

434デフォルトの名無しさん:2005/12/13(火) 20:41:50
現在、Jakartaのサイトにつながらないが、
そんなことを掲示板に書くな、ヴォケが。
435デフォルトの名無しさん:2005/12/16(金) 18:21:13
>420
primitiveの配列でもサポートされるはずだけど。
org.apache.velocity.util.introspection.UberspectImpl#getIterator(Object, Info)あたり参照。
正直、Velocityはソース追いながら & hackしながらじゃないと使いにくい。
436デフォルトの名無しさん:2005/12/19(月) 18:59:19
perl5utilでtrは未サポートらしいですね。

自力でかな 全角→半角 置換します。

if ("ア".match(str)) {
str.replaceAll("", "ア");
} else if ・・・

tr/アイウエオ/アイウエオ/ができたら1行なのに!
437デフォルトの名無しさん:2005/12/19(月) 19:37:50
誤爆?
438デフォルトの名無しさん:2005/12/20(火) 21:05:05
きわどい内容だね
ここに書いてもなんら違和感ないキャスティングだ
439デフォルトの名無しさん:2005/12/20(火) 22:57:08
OROだな。テラナツカシス
440デフォルトの名無しさん:2005/12/21(水) 00:08:03
JMeterみたいな知る人ぞ知るみたいなツールもあれば
ECSみたいに厨房のオナニーライブラリと見分けが付かないものもあったり
Jakartaも質がばらばらだな
441デフォルトの名無しさん:2005/12/21(水) 02:51:14
>>440
でもオープンなライブラリがこれだけあるのがありがたいじゃん。
例え玉石混淆でもさ。

最近.NET案件入ったらCommonsみたいのがなくて、そのありがたさを身にしみて感じてるよ。
442デフォルトの名無しさん:2005/12/21(水) 02:52:04
.netは金だせばなんでもある世界
443デフォルトの名無しさん:2005/12/21(水) 07:16:13
JakartaっていうかApacheのいいところは、既存プロジェクトからいい機能が
独立プロジェクトになるところ
444デフォルトの名無しさん:2005/12/21(水) 17:19:23
JMeterって知る人ぞ知るかぁ?Jakartaのトップからもう何年もリンクがあるのに?
あんまり使われてないのは

1. JMeter重すぎ、サーバの負荷テストの前にクライアントの負荷テストになる
2. HTTPのテストならproxyの設定の必要がないのと軽さで
  Microsoft Web Application Stress Tool(通称ゲイツ砲)に軍配
3. RMIについてはちょっと他に代わりを知らないのでJMeter使う場合もあるが
  そもそもリッチクライアントだってRMI使うことが流行じゃない
4. データベースの負荷テストなんてそもそもJMeterからやらんでもいい
5. テスト仕様書もエヴィデンスもJavadoc化できるので
  負荷テストはユニットテストの延長でjunit/junit-eeなりcactusなりで作る
6. お金があるのでWinRunnerみたいなテスト自動化ツールとか
  Cloverみたいな分析ツールを買った

ってところが理由だと思うけどな。

ECSを厨房ライブラリと言い切るのもなんだかねぇ。
perlのCGI..pmとかXML::Writer.pmのjava版だと思えばあっても構わんだろ。
使いたい奴は使えばいい。
445デフォルトの名無しさん:2006/01/02(月) 14:32:56
正月じゃカルタやるべさ
446デフォルトの名無しさん:2006/01/02(月) 15:06:10
>>440
Commonsの場合はSandboxであるかないか、とか
AかBか、という違いで質がわかるようになっている。

それ以外にも古いものや開発が停滞しているものあるはい開発が
すっかり止まっているものは質が悪かったりする(とは限らないが)、などなど。

447デフォルトの名無しさん:2006/01/05(木) 19:59:02
JXPathめちゃめちゃ使えますね。
XPathでワイルドカード、正規表現検索ってできるのでしょうか?
448デフォルトの名無しさん:2006/01/11(水) 11:50:05
Commonsに電卓のようなクラスはあるでしょうか。
"10 + (9 -1) / 2"の文字列を計算するようなものです。
449デフォルトの名無しさん:2006/01/11(水) 15:43:16
>>448
velocityでやるべし。
StringWriter writer = new StringWriter();
Velocity.evaluate(ctx, writer, "", "#set( $value = 2 * 4 * 6 )$value");
System.out.println("result: " + writer);
450デフォルトの名無しさん:2006/01/11(水) 15:49:43
>>449
なるほどね。
いただき!やってみます
451デフォルトの名無しさん:2006/01/11(水) 15:53:39
>>450
こんなんもできる。
StringWriter writer = new StringWriter();
Velocity.evaluate(ctx, writer, "", "#set( $value = 2 * 4 - 6 )$value");
System.out.println("result: " + writer);
writer = new StringWriter();
Velocity.evaluate(ctx, writer, "", "#set( $value = 2 * ( 4 - 6) )$value");
System.out.println("result: " + writer);
452デフォルトの名無しさん:2006/01/11(水) 20:34:35
Mapのキーのリストを渡して、Mapのvalueを配列(リストでもいいんだけど)で帰すメソッドってありますか?
見つからなかったので自分で作りました。
あってもいいんだけど・・・
public static Object[] toValueList(Map map, List keyList) {
Iterator iterater = keyList.iterator();
List result = new ArrayList();
while (iterater.hasNext()) {
result.add(map.get(iterater.next()));
}
return result.toArray();
}
453デフォルトの名無しさん:2006/01/11(水) 21:56:02
>>452
キーのリストを指定しなくて良いなら map.values().toArray() で取れるけど。
454デフォルトの名無しさん:2006/01/12(木) 09:47:11
>>453
ありがとうございます。
455デフォルトの名無しさん:2006/01/12(木) 16:36:04
FileUtilsでcopyDirectory(File srcDir, File destDir)がありますが、
UNIXにあたる mv はないでしょうか。
456デフォルトの名無しさん:2006/01/13(金) 05:32:36
>>455
Commonsと関係ないけど

import java.io.File;

public class MoveFile {
public static void main(String[] args) {
File orgFile = new File("a.gif");
orgFile.renameTo(new File("tmp" + File.separator + orgFile.getName()));
}
}

こんなやり方で a.gifファイルが tmpディレクトリに移動できるみたいだけど
これじゃだめ?
457デフォルトの名無しさん:2006/01/13(金) 10:24:43
>>456
ありがとうございます。
できました。
ちなみにパーティションを介した場合でも移動になるのでしょうか?
自分のマシンがCドライブのみなので確認できません。
458デフォルトの名無しさん:2006/01/13(金) 12:27:35
>>457
共有してドライブに割り当てれば?
459デフォルトの名無しさん:2006/01/13(金) 12:28:52
460デフォルトの名無しさん:2006/01/13(金) 19:37:27
>>458
できました。
ありがとうございます。
461デフォルトの名無しさん:2006/01/13(金) 20:25:19
CompositeMap使ったことある人
462デフォルトの名無しさん:2006/01/15(日) 23:09:53
Commons VFSを使えば
Commons Netにはなかったsftp接続ができるとわかったんだけど
このVFS、うまく動かない。

EclipseのMaven Repo Searchプラグインを使ってvfsで検索して
以下のタグをクリップボードからpom.xmlに貼り付けてMaven2で mvn ecipse:eclipseとして
JARファイルをEclipseプロジェクトのライブラリに追加したのだが・・・

<dependency>
 <groupId>commons-vfs</groupId>
 <artifactId>commons-vfs</artifactId>
 <version>20050307052300</version>
 <scope>compile</scope>
 <type>jar</type>
</dependency>
ナイトリービルドだからいたしかない、というしかないのだろうか?


以下のコードをためしてみたものの
http://homepage2.nifty.com/igat/igapyon/diary/2005/ig050702.html

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at org.apache.commons.vfs.impl.StandardFileSystemManager.<init>(StandardFileSystemManager.java:45)
at name.sugawara.hiroshi.html.taggenerator.uploader.ImageUploader.main(ImageUploader.java:31)


どういうことだ?
EclipseにはCommons LoggingのJarがライブラリにクラスパスとして通っているというのに。
463デフォルトの名無しさん:2006/01/16(月) 00:04:50
とりあえずsugawara hiroshiさんだということは分かった。
464デフォルトの名無しさん:2006/01/16(月) 01:35:30
     ∩___∩
     | ノ      ヽ
    /⌒) ●   ● |
   / ////( _●_)// ミ
  .(  ヽ  |∪|  、\
   \    ヽノ /´>  )
     |      / (_/
465デフォルトの名無しさん:2006/01/16(月) 02:07:22
ワラタ(・∀・)
466デフォルトの名無しさん:2006/01/16(月) 02:21:57
>>463
ばれちゃったか(笑
しばらくレスするのやめることにするかもしれないけど
実名晒しても恐れずに前に突き進んでみるさ。

VFSはまだまだバグがあるのようなので

かわりにJschまたはJ2SSHを試して見ることにしたよ。
レスサンクスな。
467デフォルトの名無しさん:2006/01/16(月) 02:35:03
パッケージ名にname.sugawara.hiroshiという.nameドメインを使っていただけ
ただそれだけのようで何も珍しくも



468デフォルトの名無しさん:2006/01/16(月) 02:48:56
Maven Repo SearchでもsshをキーワードにしてJ2SSHをインストールできることがわかった。
469デフォルトの名無しさん:2006/01/16(月) 12:50:48
>>462
どうやら、実行時にCommons Logging のjarをクラスパスに通すだけでいいっぽい。
これはどうやら、なぜかJ2SSHでも同じように必要なようですな。


470462:2006/01/17(火) 02:02:23
結局sftpを使うにはJ2SSHを使うことにした。
Commons VFSを使うよりこっちのほうが安定している。
確かにVFS, J2SSHどちらも実行時にCommons Loggingを必要としている。
内部ではjsch.jarを使っているようだ。
Maven Repo SearchでJ2SSHも引っかかることがわかった。



471デフォルトの名無しさん:2006/01/25(水) 04:51:28
Commons Configurations使ったらlog4j,becl,beanutils.commons-loggingのダウンロードも強いられた。
もうわけわかめ。Eclipse + Maven2がなかったら困惑してたに違いヌー
472デフォルトの名無しさん:2006/01/26(木) 11:46:12
ネストされているBeanのプロパティーの値も出力してくれる
ReflectionToStringBuilderみたいなものはないでしょうか。
DB登録失敗時にデータを運用で復元したいので、
テキスト形式で情報を出してほしいといわれてしまいました。
対処法がわからず途方にくれています。
473デフォルトの名無しさん:2006/01/26(木) 12:11:34
org.apache.commons.transaction.file.FileResourceManager使ったことある人
ファイルをベースにして、DBのようなトランザクションができそう
474デフォルトの名無しさん:2006/01/26(木) 12:16:13
>>472
とりあえず、XMLEncoderでシリアライズしてみるとか。
475デフォルトの名無しさん:2006/01/26(木) 13:28:04
>>474
そうですね。
今はとりあえずBeanWriterでXML形式で全部出しています。
ただプロパティー形式にしろといわれ、ちょっと困っています。
Commonsをいろいろみましたが、XML→プロパティの変換はなかったので・・・
476デフォルトの名無しさん:2006/01/26(木) 17:00:12
ちょっとしたことなんだけど、ファイル削除メソッドってstaticであってもよくないですか。
new File("xx").delete();はめんどくさいです。
477デフォルトの名無しさん:2006/01/26(木) 17:22:38
仮にあったとしても FileUtils.delete("xx"); じゃ大して変わらんね。

static import すりゃタイプ数も変わるかもしれんが、
delete は比較的衝突しやすそうな名前だしなぁ。
478デフォルトの名無しさん:2006/01/27(金) 10:32:22
>>473
自己レス。
新たにファイルを作成・書込み・変更の作業はロールバックできるけど、
すでにあるファイルを削除したときのロールバックはできないみたい。
他にやり方があるかもしれないですが・・・
479デフォルトの名無しさん:2006/01/27(金) 10:41:11
org.apache.commons.collections.iterators いろいろみましたが、
カウンタを取得できるiteratorはないですね。
ループはiteratorでいつも通りしたいのですが、
ループ中にカウンタがほしい、ということはないんですかね・・・。
カウンタ取るために、リストを配列に戻して、list.get(1)とかって、なんか悲しいです。
皆さんはどうしてます。
480デフォルトの名無しさん:2006/01/27(金) 12:20:57
>>479
ローカル変数でカウンタ宣言してループ内で使えばいいんじゃ?
イテレータがカウンタ持つ必要はないと思うけど
481デフォルトの名無しさん:2006/01/27(金) 12:26:48
>>479
インデックス使いたいなら、わざわざIterator使う必要ないと思うけど。
インデックス使わずに、走査できるのがIteratorなのに。
なんで、List→配列化するかも不明??
482デフォルトの名無しさん:2006/01/27(金) 17:32:46
俺も行番号生成とかでたまにやるけど、少なくとも配列に戻す必要は無いな。
ローカル変数で十分。
483デフォルトの名無しさん:2006/01/27(金) 17:43:28
List#listIterator() じゃダメなの?
484デフォルトの名無しさん:2006/01/31(火) 17:29:34

>>479
LinkedHashMap使ってキーに数字をいれるのはどうよ?
って話じゃないか

List#subList()などを組み合わせてループしながら
List#index.Of() , List#lastIndexOf()でindexを検索するのはどうよ?

485デフォルトの名無しさん:2006/01/31(火) 18:02:07
BeanMap bmap = new BeanMap(this);
System.out.println(IteratorUtils.toList(bmap.entryIterator()));
でフィールドのリストが出力されますが、
thisのクラスのみのフィールドをしゅとくすることはできるでしょうか。
486デフォルトの名無しさん:2006/01/31(火) 19:04:22
>>479
素直に
int counter = 0;
for( String s : stringList) {
counter++;
//なんか処理
}
じゃ駄目なのか?
487デフォルトの名無しさん:2006/02/02(木) 00:19:04
CodeZine:Jakarta Commonsを使ってJDKクラスを拡張する:パート1
http://codezine.jp/a/article.aspx?aid=283

CodeZine:Jakarta Commonsを使ってJDKクラスを拡張する:パート2
http://codezine.jp/a/article.aspx?aid=284
488デフォルトの名無しさん:2006/02/02(木) 16:14:27
日付の大小比較をしたいのですが、DateUtils.isSameDayだと
大小比較ができません。Commonsで他に便利なものはありますでしょうか?
489デフォルトの名無しさん:2006/02/02(木) 16:20:31
>>488
java.util.Date#compareTo(Date)
490デフォルトの名無しさん:2006/02/02(木) 17:50:24
>>489
失敬です。
当然でした・・・・
491デフォルトの名無しさん:2006/02/02(木) 18:43:06
PropertiesでLinkedHashMapに対応するPropertiesみたいなものってないでしょうか?
PropertiesのpropertyNamesでキーのリストを取れますが、
Propertiesの先頭から順に取得したいです。
492デフォルトの名無しさん:2006/02/02(木) 19:26:59
ファイルの内容をiteratorでまわすクラスはあるでしょうか。
493デフォルトの名無しさん:2006/02/02(木) 19:37:41
org.apache.commons.io.FileUtils.readLines(new File("filename"), "encoding")
494デフォルトの名無しさん:2006/02/02(木) 20:24:22
>>493
ありがとうございます。
これは一気にファイルの情報をStringにつめていますが(たぶん)
小さいファイルなのでかまわず使用させていただきます。
495デフォルトの名無しさん:2006/02/02(木) 20:44:09
一気に読みたくないなら commons なんか使わないで普通に

BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("filename"), "encoding"));
String line;
while(null != (line = br.readLine())){
 // line 使った処理
}
496デフォルトの名無しさん:2006/02/07(火) 14:45:55
cvsファイルの、"xx xx"やxx\'xxなど文字を、下記の通り返すようなユーティリティはありますか。
"xx xx" → xx xx
xx\'xx → xx'xx
497デフォルトの名無しさん:2006/02/07(火) 14:58:46
>>496
それありそうでないよね。
498デフォルトの名無しさん:2006/02/07(火) 19:08:45
>>497
たしかに。StringTokenizerはつかえねーし。
499デフォルトの名無しさん:2006/02/07(火) 23:59:52
>>496
いまいち意味がつかめないんだけど、ダブルクォートと円サインを空文字で
置換したあとに、(CSVなので)カンマでsplitしたらいいの?
500デフォルトの名無しさん:2006/02/08(水) 05:59:06
>>499
ダブルクォートの中にカンマがあったら?
501デフォルトの名無しさん:2006/02/08(水) 13:45:01
HashMapのみで構成されたCollectionにCollections.sortかけたら、
なぜかClassCastExceptionが発生。なぜ?
502デフォルトの名無しさん:2006/02/08(水) 13:51:39
>>501
Comparator 渡さなかったんじゃないの?

HashMap は Comparable 実装して無いから ((Comparable)e1).compareTo(e2)
みたいにやってる部分で ClassCastException 食らうはず。
503デフォルトの名無しさん:2006/02/08(水) 13:55:06
>>501
すいません。自己解決。Comparable実装してませんでした。
504デフォルトの名無しさん:2006/02/08(水) 18:16:05
シリアライズ可能でないオブジェクトは、どうあがいてもシリアライズできないでしょうか。
SerializationUtilsは、見た感じそのようなものではなかったのですが・・
505デフォルトの名無しさん:2006/02/08(水) 21:49:00
CollectionUtilsのforAllDo()で、コレクションの再起処理はできないのでしょうか
506デフォルトの名無しさん:2006/02/08(水) 22:14:17
class RecursiveClosuer implements Closure{
 private Closure delegate;
 public RecursiveClosure(Closure closure){ delegate = closure; }
 public void execute(Object input){
  if(!input instanceof Collection) delegate.execute(input);
  else CollectionUtils.forAllDo((Collection)input, this);
 }
}

みたいのを作って
CollectionUtils.forAllDo(collection, new RecursiveClosure(delegate))
とかすれば数行で対応できるから作らんかったんじゃなかろーか。
507デフォルトの名無しさん:2006/02/09(木) 16:25:06
>>506
すばらしい。
ありがとうございます。
508デフォルトの名無しさん:2006/02/10(金) 05:09:46
Closure closure = new Closure(input) {
 if (input instanceof Collection) {
  CollectionUtils.forAllDo((Collection) input, this);
 } else {
  // したい処理
 }
};
CollectionUtils.forAllDo(collection, closure);

再帰処理するように Closure を書けばいいだけじゃん。
506 みたいな RecursiveClosure なんか作る必要もない。
509デフォルトの名無しさん:2006/02/10(金) 05:11:03
なんか変になったが new Closure() { public void execute(Object input) {・・・ な
510デフォルトの名無しさん:2006/02/13(月) 11:00:42
PropertyUtils#setPropertyって、BeanUtils#setPropertyと違って
オブジェクトのConvertが使用されないのですね・・
511デフォルトの名無しさん:2006/02/13(月) 13:11:57
ドキュメントに with no type conversions ってしっかり書いてあるし。
512デフォルトの名無しさん:2006/02/13(月) 15:01:18
yahooの検索結果で、10件表示の全件が110件以上の場合は
検索画面の下に
2・・・・11って出ますが、あんな計算をさくっとやってくれるツールないですかね
513デフォルトの名無しさん:2006/02/13(月) 15:54:24
>>512
電卓
514デフォルトの名無しさん:2006/02/13(月) 16:49:07
一定期間で無効になるHashMapのようなクラスってないのかな
WebAppで小さいファイルを読み込んだり、
定期的に再読み込みしてほしいことって良くあるけど、それようのUtilクラスが見当たらないね
515デフォルトの名無しさん:2006/02/13(月) 16:55:10
それ HashMap 関係あるの?
定期的になんらかの処理させたいなら java.util.Timer とかもあるし。
516デフォルトの名無しさん:2006/02/13(月) 17:24:18
ま、Timerかなんかで定期的にキャッシュしたい値が入ってるMapをクリアすればいいが、
出来ればそれぞれのvalueは指定した時間内だけ有効(取り出せる)なコンテナがあると、
気軽にキャッシュとして使えていいなー と。
517デフォルトの名無しさん:2006/02/13(月) 17:34:55
>>516
一応、Sandboxにキャッシュ関係はあるみたいだけど、使い物になるかどうか……。
http://jakarta.apache.org/commons/sandbox/cache/
518デフォルトの名無しさん:2006/02/13(月) 18:12:31
一定期間にはならんけど、キャッシュならWeakHashMapを良く使うな
519デフォルトの名無しさん:2006/02/13(月) 18:17:22
WeakHashMap で put("key", value) とかやって……
520デフォルトの名無しさん:2006/02/15(水) 09:38:43
unixで言うところのgrepのようなクラスはあるでしょうか。
今は正規表現のMatcherを使用して自力で書いています。
521デフォルトの名無しさん:2006/02/15(水) 09:50:40
プリミティブ型とintやdoubleが混ざる計算をするときに、
全ての型をプリミティブ型にしなければいけませんが、
もっと簡単に計算できるツールはないでしょうか。
MathUtilsかなと思ったのですが、数学用のものでした。
522デフォルトの名無しさん:2006/02/15(水) 11:31:43
>>513
ありがとうございます。
電卓用クラスがあるのでしょうか?
523デフォルトの名無しさん:2006/02/15(水) 12:00:01
>520
grep のような、と言うのは
複数ファイルから検索を行うってこと?
それはクラスレベルではなくて、
アプリケーションレベルの話じゃないでしょうか。
524デフォルトの名無しさん:2006/02/15(水) 12:04:00
>>523
すいません。
1ファイルレベルです。
525デフォルトの名無しさん:2006/02/15(水) 12:26:08
526デフォルトの名無しさん:2006/02/15(水) 12:57:10
>>522
110 / 10 = 11
これ以上になにか必要か?
527デフォルトの名無しさん:2006/02/15(水) 17:47:46
LazyListで、set(6, "")すると落ちます。
LazyList.decorate(new ArrayList(), FactoryUtils.constantFactory(""));
list.set(6, "")
addは対応されているのですが、setは対応していないのでしょうか?
528デフォルトの名無しさん:2006/02/16(木) 19:39:01
DateUtils#iteratorは使えるが、xx日〜yy日のリストもほしいな・・・
529デフォルトの名無しさん:2006/02/20(月) 12:00:18
>>527
自己解決。
setをオーバーライドし、中でaddを呼ぶようにして解決しました。
530デフォルトの名無しさん:2006/02/26(日) 17:34:14
commonsだけじゃないんだけど、既存のプロジェクトで使われてるjarのバージョンを正確に知る方法とか
ツールってなんかありますか?

引き継いだはいいけどライブラリのバージョンに関する情報が無くて・・・orz
いちいち全部クラスとかプロパティの存在有無とかで当たりつけるしかないのかなぁ・・・。
531デフォルトの名無しさん:2006/02/26(日) 17:46:20
>>530
jar内のMANIFEST.MFに書いてあることもある。Jakartaのはだいたい書いてあって気がするよ。
532デフォルトの名無しさん:2006/02/26(日) 19:41:13
MANIFEST.MFになければhashやサイズで比較するとかかな。
内容で比較するのはしんどいでしょ。
533デフォルトの名無しさん:2006/02/27(月) 00:09:23
>>531
>>532

レスありがとうございます。
やっぱり全部共通で調べられるような楽な方法はないっすよね。

でもMANIFEST.MFとかサイズで比較ならなんとかなりそうなんで、いっちょやってみます!
ありがとうございました。
534デフォルトの名無しさん:2006/03/08(水) 10:17:56
あるファイルの、エンコード種別を判断するクラスはあるでしょうか。
読込むファイルの文字コードをPGで判断しろといわれてしまいました。
535デフォルトの名無しさん:2006/03/08(水) 12:09:41
Converterで、配列を変換することはできないのでしょうか。
536デフォルトの名無しさん:2006/03/08(水) 12:55:02
なんのConverterだよ
537デフォルトの名無しさん:2006/03/08(水) 13:08:56
>>536
ConvertUtils.register()に追加できるConverterです。
538デフォルトの名無しさん:2006/03/08(水) 13:18:25
BeanUtilsのConverterか?だったらできる。
何の話をしているのかわからない質問するなよ
539デフォルトの名無しさん:2006/03/08(水) 14:56:51
>>538
すんませんす。
ありがとうございます。
540デフォルトの名無しさん:2006/03/09(木) 11:44:45
「2M」の文字情報を、byte単位の文字情報に変換するクラスはあるでしょうか。
FileUtilsの逆みたいなものです。
単純に、byte変換クラス見たいのがあればいいのですが
541デフォルトの名無しさん:2006/03/09(木) 19:28:38
>>540
自分で見つけました。
String prefix =
ModuleUtils
.getInstance()
.getModuleConfig(request, application)
.getPrefix();

return (ValidatorResources) application.getAttribute(
ValidatorPlugIn.VALIDATOR_KEY + prefix);
542デフォルトの名無しさん:2006/03/10(金) 11:42:01
CollectionUtilsで、重複したデータを取得することはできるでしょうか。
Beanのリストに対し、BeanPredicateなどで、比較対照項目を絞り込んで
そこから重複を取得したいです。
543デフォルトの名無しさん:2006/03/10(金) 21:55:41
>>534
文字エンコードに
"Shift_JIS"とか"EUC-JP"とかのかわりに
"JISAutoDetect"ってやるのがいちばん簡単

それが信用できないなら(実際あまり当てにならないけど)
↓をよくよんでガンバレ
http://www.mars.dti.ne.jp/~torao/program/appendix/japanese.html
544デフォルトの名無しさん:2006/03/10(金) 22:48:40
>>543
とんでもないことすすめるなよ
545デフォルトの名無しさん:2006/03/11(土) 12:31:08
>>541
誤爆???
>>540とは関係なくない?

↓に全く同じ投稿あったけど。


http://pc8.2ch.net/test/read.cgi/tech/1109465052/669
> >>668
> 自分で見つけました。
> String prefix =
> ModuleUtils
> .getInstance()
> .getModuleConfig(request, application)
> .getPrefix();
> return (ValidatorResources) application.getAttribute(
> ValidatorPlugIn.VALIDATOR_KEY + prefix);
546デフォルトの名無しさん:2006/03/11(土) 12:56:41
んなこともあるさ
547デフォルトの名無しさん:2006/03/13(月) 18:45:51
>>544
これは結構危険なのでしょうか?
548デフォルトの名無しさん:2006/03/13(月) 23:20:07
いまどき文字コード自動判別とか馬鹿じゃねえの
そんなこと要求するやつ糞食わしていいよ
549デフォルトの名無しさん:2006/03/14(火) 09:15:21
>>547
危険つーか、大体でしか判別できないのでハズレる可能性あり
550デフォルトの名無しさん:2006/03/14(火) 10:23:10
自動判別の難しさと不確実さをきちんと説明して
それでもPG側でやれって言うならやればいいだろう。
それで問題が起きても指示した人間の罪だ。
きちんと説明してさえあれば。
551デフォルトの名無しさん:2006/03/14(火) 16:01:53
>>551
それに加え、何かしら仕様書なんかに書いておくのは必須だな。
後になってから「そんなの聞いてない」 とかいう客よくいるから。
552デフォルトの名無しさん:2006/03/15(水) 20:48:27
そうだな、証拠は残すべき
たとえ、客が仕様書を読んでないとしても。
553デフォルトの名無しさん:2006/03/16(木) 23:35:26
Java以外だとエディタとかで自動判別する奴結構あるじゃん?
あれってどーやってんの?
554デフォルトの名無しさん:2006/03/17(金) 15:41:55
日本語の場合、
1. iso-2022-jpだとそれを示す並びがあるので判別可能。
2. euc-jp と shift_jis は本質的に判別が難しいが、片方のエンコードにはあるのに、
 もう片方のエンコードにはないコード列が存在するので、
 それを検出した段階で判別可能。
ってやり方だと思う。

早い話、「片方のエンコードにしか存在しないコード列」を使っていない文章は判別不可能になる。

自動判別持ち出すんなら、そういうケースに対して
どう対処すべきかくらい考えてて然るべき。
何も考えていないんなら、ただのバカ。
555デフォルトの名無しさん:2006/03/17(金) 22:28:18
BeanUtils.getPropertyで、以下の"aaa"の値を出そうとしていますが、
下記の通りに書いてもエラーになります。
値をとる方法はあるでしょうか?
Map map = new HashMap();
map.put("aaa", "bbb");
List list = new ArrayList();
list.add(map);
Map top = new HashMap();
top.put("list", list);

BeanUtils.getProperty(top, "list[0].aaa");
BeanUtils.getProperty(top, "list[0](aaa)");
BeanUtils.getProperty(top, "list.aaa");
556デフォルトの名無しさん:2006/03/20(月) 13:23:53
>>555
それは無理だな。
リストのマップも、マップのリストも無理だよ。
リストマップともに扱いが特別だから、併用は難しいね
557デフォルトの名無しさん:2006/04/20(木) 17:34:51
BeanUtilすげー賢いね。
booleanに文字列の1とか突っ込んだらちゃんとtrueにしてくれた。
1以外はすべてfalseね。
こりゃー便利だわー。
558デフォルトの名無しさん:2006/04/20(木) 20:08:17
Cなら0がfalseで他がtrueにならね?
559デフォルトの名無しさん:2006/04/21(金) 23:12:26
commonsのライブラリ同梱でアプリ配るときって、どうすればいいの?
なんか一緒に入れとかなきゃいけないファイルとか教えて。
560デフォルトの名無しさん:2006/04/22(土) 00:52:55
Apacheの製品を含んでいるアプリを配布する場合は
「This product includes software developed by the
Apache Software Foundation http://www.apache.org/
とどこかに明記していればOK。
たとえば、Eclipseだとメニューバーのヘルプの「Eclipse SDKについて」を参照すると
これが書いてある。
アプリのライセンス文に上記の一文を含めておくのでも良い。

あとはかなり自由。ソースコードの公開義務や添付義務は無い。商用利用OK。
561デフォルトの名無しさん:2006/04/22(土) 01:55:47
>>559
ASL 2.0の翻訳がここにある。
ttp://www.opensource.jp/licenses/apache2.0.html

バイナリ再配布に絡むところとしては、
> 1. 成果物または派生成果物の他の受領者に本ライセンスのコピーも渡すこと。
> 4.成果物の一部として「NOTICE」に相当するテキストファイルが含まれている場合は、
> そうしたNOTICEファイルに含まれている帰属告知のコピーを、派生成果物のどこにも
> 関係しないものは除いて、頒布する派生成果物に入れること。その際、次のうちの少
> なくとも1箇所に挿入すること。
>
> (i) 派生成果物の一部として頒布するNOTICEテキストファイル、
> (ii) ソース形式またはドキュメント(派生成果物と共にドキュメントを頒布する場合)、
> (iii) 派生成果物によって生成される表示(こうした第三者告知を盛り込むことが
> 標準的なやり方になっている場合)。

上記は結構省略してるので、自分でも全文を見て欲しい。さらに言えば、日本語訳は
あくまで翻訳なので、ライセンスとしては英文のみが有効。

まあ大ざっぱに言うと
1. Apache Software Licence 2.0の原本(英文)のコピーを配布物に含めること。(日本語訳も
一緒に配布している例もあるけど、英文のものは必ず含めること)
2. 利用したASLベースの成果物に「NOTICE」というファイルが含まれている場合、その内容を
以下のいずれかに必ず含めること。

・あんたのプログラムにNOTICEファイルがある場合は、その中。
・ドキュメントあるいはソースの中
・あんたのプログラムでライセンスとかについて表示しているところがあるなら(例:アバウト画面)その中

>>560の言っているのが、上記の2に該当する。
それに含めてASLの書かれたファイルを一緒に添付しろってこと。
562561:2006/04/22(土) 02:02:38
追記。
あと、NOTICE表示に自分の派生物についての告知を追加してもいいんだけど、
その追加ライセンス条項がASL 2.0の修正であるかのように読まれないようにしろ、
という条件もある。

要は
・この配布物にはASL 2.0ライセンスの成果物が含まれてる。
・この配布物のライセンス条件は俺がきめたこれだけど、APL 2.0ライセンスの成果物に
ついてはあくまでAPL 2.0の条件下にあるよ。

ということを保証しろ、ということ。APL 2.0には、配布物によって損害を被っても
Apache Software Foundationは知らんよ、という条項があって、もしライセンスを独自のもの
にするとしても、APL2.0成果物についてはAPL2.0の条件下にあることを理解させろ、という
ことだと思う。
563559:2006/04/23(日) 20:41:41
>>560
>>561

丁寧な説明ありがとう!
意外と簡単に配布できるんだね。
564デフォルトの名無しさん:2006/04/27(木) 13:32:52
2つ以上のInputStreamから読込み待ち?することはできるでしょうか。
例えば、標準入力とネットワークストリームを常に読込みスタンバイして
データが転送されたストリームのデータを取得するとか。
IOUtilsには、らしきものがなかったような・・・
565デフォルトの名無しさん:2006/04/27(木) 13:46:02
そりゃcommonsじゃなくて質問スレだな
スレッド分けて待機させればいいだけだが
566デフォルトの名無しさん:2006/04/27(木) 17:25:26
Configuration#getProperties()の機能ってわかる人いますか?
567デフォルトの名無しさん:2006/04/27(木) 18:42:32
ノシ
568デフォルトの名無しさん:2006/04/28(金) 15:20:09
PropertiesConfiguration#setProperty同期とってねー。
パッケージの全ソースgrepしたけど、synchronizedが4箇所だけで、セットとは関係ないところに・・・
569デフォルトの名無しさん:2006/04/30(日) 15:04:24
Commons Configuration はまだバグが多いので
使い勝手がよろしくないなー。
自動リロード戦略クラスを適用しても
瀬定ファイルの修正を監視してくれなかったし。
570デフォルトの名無しさん:2006/05/01(月) 10:28:44
>>569
瀬定ファイルってなに?
監視はうまく動いてたよ
571デフォルトの名無しさん:2006/05/02(火) 00:29:15
C#版Commonsみたいなプロジェクトとかってないの?
誰かガッツンガッツン移植してよ。
572デフォルトの名無しさん:2006/05/02(火) 00:59:59
>>571
.net で C# 限定にする意味があんのか?
573デフォルトの名無しさん:2006/05/02(火) 01:34:03
マイクロソフト自身がJakarta Projectみたいなことしてて
いろんなライブラリをソースごと公開してるんじゃなかったっけ。
おれは良く知らんのだけど。
574デフォルトの名無しさん:2006/05/02(火) 11:04:54
>>570
設定ファイルのtypo

XMLファイルのviで編集しても
監視が反映されていなかたことがある。

XMLConfigurationという奴だったかな?
もうひとつ、XMLPropertiesConfigurationもうまくいかず
575デフォルトの名無しさん:2006/05/02(火) 11:06:36
>>573
下手に移植するとApache Software License違反に
なるんじゃないのか?

NantとかNUnitとかいうのがM$に吸収されてはいるが。
ライセンス形態をBSDにするとすべてマイクロソフトに持ってかれるが
ASLだとそうはいかないと思うのだが。
576デフォルトの名無しさん:2006/05/02(火) 12:03:39
>>574
のるほど。
ただ、Configurationは便利だね。
MapやPropertiesに変更できることも大きいし。
ソースをそんなに変更しなくても、MapやPropertiesから移植は簡単だ
577デフォルトの名無しさん:2006/05/02(火) 17:05:38
>>575
いや、Jakartaを移植してるんじゃないよ。共用コンポーネントを
作ってるってだけで。

どこでみたんだっけと思って検索したら@ITだった。
ttp://www.atmarkit.co.jp/fdotnet/entlib/index/index.html
578デフォルトの名無しさん:2006/05/02(火) 19:38:11
SandboxのIdって、jarリリースしていないのでしょうか。ソースしかありません。
579デフォルトの名無しさん:2006/05/02(火) 23:38:16
>>577
Enterprise Libraryみたいな大規模向け(?)っぽいのじゃなくて、commonsのlangとかみたいな小粒なやつが欲しいんだよー。
参照設定にdllの参照追加するだけでOK、って感じの。
どっかそーゆーの作ってる人いないのかな?

ASFって.NET系にはあまり力入れてないの?
580デフォルトの名無しさん:2006/05/03(水) 12:53:27
すいません、配布に関して質問なんですが、commonsの中の使用したいクラスのみ取り出して
自分のjarに含めてしまう、といった配布方法は可能ですか?
もちろん>>561さんご指摘の点は守るとしてです。

commonsのjar内のクラスを全部使っているわけではないので、できれば配布ファイルのサイズを抑えたいのですが・・・。
581デフォルトの名無しさん:2006/05/03(水) 13:41:02
>>579
> ASFって.NET系にはあまり力入れてないの?

聞いたことがない。
背後でJavaやLinuxを推しているIBM等の企業がかかわっているらしいからなあ。
MS製品対応ソフトウェアの開発はやっていなさそうな気がする。
なにせ、MSはオープンソースを嫌っているし、オープンソースは共産主義だ
などめちゃくちゃなこといっているし。
GPLとくらべたらASLは共産主義とまではいかないんだけどね。
たとえMSが一部の自社製品をSourceForgeに公開したとしても
オープンソース全体を敵に回すような不可解な発言が、
無理して.NETに力を入れない方がいいという暗示を示しているのではないかと。

それで今.NETが流行らなくなっているような
582デフォルトの名無しさん:2006/05/03(水) 22:38:47
>>581
聞いたことが無いって、あーた log4net とかも聞いたこと無いの?
.net も言うほど、死んでないよ。俺は Java メインだが、
今は .net 案件のほうが単価が上げれる。色々な会社の話を聞く限り
.net で技術的に自信を持っている会社が少なくて、金額的にはおいしい。
583デフォルトの名無しさん:2006/05/03(水) 22:40:24
>>582
Enterprise Libraryのことだろ。
しかしJakartaとくらべるとまだまだものが少ないし
オープンソースコミュニティの活発さが足りないし、
まだまだって感じがする。
584デフォルトの名無しさん:2006/05/09(火) 19:03:28
org.apache.commons.mailいけるぞ!
585デフォルトの名無しさん:2006/05/09(火) 22:32:31
Commons Mail?
Java Mail APIを補足するやつなのか?

どうういけるのか感想きぼんぬ
586デフォルトの名無しさん:2006/05/09(火) 22:43:36
おれは584じゃないが、かなり簡単にメールが送れるね。
Perlでメール送る時みたいな感じといったらいいのかな。
setTitle()とかsetFrom()とかしてからsend()よんだらメールが
送れてしまう、というやつです。
添付ファイルやHTMLメールもさっくり送れます。

内部ではJavaMailを使ってるらしい。
587デフォルトの名無しさん:2006/05/09(火) 22:43:54
>>585
すごーくシンプルだから、Webサイト見れば一発で理解できると思う。
JavaMailのうすーいラップのようなもの。
new()して、TOやらCCやらFROMやらSubjectやらをセットして、send()呼べば送れる。
ちょうどJavaBeansのようにsetterでセットする形になってるから、DIコンテナでJavaBeansとして扱えるカモ。
588デフォルトの名無しさん:2006/05/10(水) 00:11:44
>>587
いいねー。Commons の HTTP 扱うやつより、よっぽど需要がありそうだ。
っつか、そこらじゅうの業務プロジェクトに似たようなのがあったのが
いらなくなるな。
589デフォルトの名無しさん:2006/05/10(水) 00:51:01
>>588
そうそう。いつもみんな自前で似たような、しかし出来の悪い物を作っていたアレだ。
もう作らなくてよくなる。
590デフォルトの名無しさん:2006/05/10(水) 01:36:24
Java Mail APIが使いやすくなるのか。
ええなあ。
内部でJava Mailを使っているということは、
Mavenで導入するときは自分でmail.jarとactivation.jarをダウンロードして
mvn installでローカルリポジトリに追加しないといけないのか。
591デフォルトの名無しさん:2006/05/10(水) 01:55:52
>>590
そうだね。バイナリ版をダウンロードしても、libフォルダ内にテキストファイルが
入っていて、「mail.jarとactivation.jarを別途ダウンロードしてね」と書いてあった。
592デフォルトの名無しさん:2006/05/10(水) 10:02:30
探せばまだまだある。
commons-transactionだって使えるぞ。
ファイルの追加、削除、リネームをして、
ヤベ、戻したいっと思ったときにロールバックをかけるときれいさっぱりに
593デフォルトの名無しさん:2006/05/10(水) 12:31:42
>>592
DB がからむと使い方が難しそうだ。
2 フェーズコミット問題。JTA みたいなのを自作っつーのもあれだ。
厳密でなければ、良さげ。
594デフォルトの名無しさん:2006/05/10(水) 12:59:40
>ヤベ、戻したいっと思ったときにロールバックをかけるときれいさっぱりに

きれいさっぱりに消えてしまうんですか!?
(((;゚Д゚)))ガクガクブルブル
595デフォルトの名無しさん:2006/05/10(水) 13:49:38
>>594
ちゃんと言うと、DBのトランザクションと同じで
コミットしないと、対象ディレクトリに作成・削除が実行されないって事。
つまり、コミットまではワークスペースに対して実行されている。
596デフォルトの名無しさん:2006/05/11(木) 00:00:06
mail試そうと思ったらサーバ落ちてる・・・
597デフォルトの名無しさん:2006/05/11(木) 11:01:21
XMLを読み込むフレームワークで、DigesterとかBetwixtとか見てるんだけど、
XMLの内容を格納するbeanを明示的に書かなくてもいいものって無いかな?

  XMLのパース → BeanUtilなどでパース結果を格納したbeanを動的生成

までやってくれて、利用者側は、あくまでXMLをAPIに読み込ませて、
結果として返されるDynaBeanとかを利用するだけ、みたいな。
598デフォルトの名無しさん:2006/05/11(木) 12:14:31
commons ではないけど xmlbeans や relaxer でどう?
DynaBean 的なものではないけど、
人間がやるのはスキーマを書くところだけ。
マッピングクラスの定義は自動生成する。
599デフォルトの名無しさん:2006/05/11(木) 13:20:58
両方見てるんだけれど、スキーマも書きたくないヘタレ厨('A`)としては、
もっと手を抜きたいんですわ。

ってことで、マッピングクラスは作らないといけないけど、XerialJ/XMLBeanっていうのを見つけた。
ttp://www.xerial.org/projects/Xerial/wiki/XerialJ/XMLBean
Digesterよりは楽そう。

ライセンスは、
Indiana University Extreme! Lab Software License
ってものらしいけど、
ttp://www.novell.com/ja-jp/documentation/workbench41/docs/help/books/TutorialWarfront.html
で見たライセンスの翻訳見る限りは、商用利用でも制限無さそう。
600デフォルトの名無しさん:2006/05/11(木) 14:05:44
俺はスキーマ書くだけで
・コンパイラによるチェック
・入力補完
で手が抜ける方が素敵に感じる。

まぁ人それぞれっすね。
601デフォルトの名無しさん:2006/05/11(木) 14:25:50
>>599
Betwixtですむよ。定義いらない(Betwixt自身で吐き出したxmlならね)。
602599:2006/05/11(木) 17:35:13
いろんな考え方があるねぇ。。。
自分に合ったものを選べばいいってことなんだろうけど。

早速、XerialJ/XMLBeanを試してみたけど、
格納するBeanさえ作ってしまえば楽ちんだわ、これ。
日本語もOK。
603デフォルトの名無しさん:2006/05/11(木) 17:49:31
>>602
配列じゃなくリストは対応できるのかぁ・・・
604デフォルトの名無しさん:2006/05/12(金) 09:29:16
>>603
格納先Beanに、配列の代わりにListを使うとダメみたい。
605デフォルトの名無しさん:2006/05/12(金) 09:44:51
>>604
Betwixtならできるぞよ
606デフォルトの名無しさん:2006/05/12(金) 11:07:04
>>605
まぢっすか。
Betwixtの勉強によさげなサイトとか紹介してもらえませんか。
607デフォルトの名無しさん:2006/05/12(金) 13:48:02
XerialJ、配列ってのを気にしなければ、
けっこーネストしたxmlでもbeanさえ作っておけば
処理してくれるね。
608デフォルトの名無しさん:2006/05/12(金) 20:48:32
>>604
Beanにset/getの2つのメソッド以外に、addを用意するのがミソ。
609デフォルトの名無しさん:2006/05/12(金) 22:15:15
>>608
Betwixtもそうだよ。
まぁ、みんな同じだね・・・
610デフォルトの名無しさん:2006/05/13(土) 01:03:49
まぁ、いろんな技術要素を知っておいたほうが、
選択肢や対応力は広がるよね。
611デフォルトの名無しさん:2006/05/17(水) 04:56:52
beanutils が遅いと聞いたのでどれくらい遅いか試してみました。

プロパティファイルから取得したプロパティをbeanutilsで入れるのと、
setterで入れるのを比較しました。

Bean は int boolean String のフィールドを持ち、
setter では、
それぞれ Integer.parseInt Boolean.valueOf.booleanValue Stringはそのまま
を使用しました。

beanutils ではPropertyNameをEnumerationで取得して
while(enu.hasMoreElements()){
  String name = (String)enu.nextElement();
  BeanUtils.setProperty(bean, name, props.getProperty(name));
}

これらを100万回ループさせた結果、
beanutils は 平均 7090.3 ms
setter は 604.7

でした。

612デフォルトの名無しさん:2006/05/17(水) 05:18:32
Bean の プロパティの数を増やし、
int 2個 boolean 2個 String 2個
にして、同様の実験をしたところ、

beanutils 平均 14372.4 ms
setter 平均 1134.9 ms

でした。
web の場合、1アクセスで3つのbeanを呼び出すとして、
そのbeanにプロパティが10個とします。
その場合上の結果から、100万回アクセスがあると、
7090 * 10 / 3 * 3 = 70900
100万回で、beanutilsの部分だけで71秒もかかってしまうのですが、
これはボトルネックになりうると思ったんですが、
1アクセスあたり 0.0000709秒なのでDBからデータの取得のほうが全然重そうですね。
613デフォルトの名無しさん:2006/05/17(水) 19:42:58
>>612
配列に比べコレクションが重いとか
String の + 連結が遅いとかもその類だな。

システム構築の標準化を行う人間で、
そういうのを禁止する奴がいて困る。
全クラスをシングルトンにするとかバカもいたしな。
要件がきついシステムもあるので全否定するわけではないが、
そんなんだったら環境を改善するか、Java やめたほうが(ry

巷の Java 初心者のなんちゃってアーキテクトをなんとかしてくれ。
あー、あんたの検証した DB がボトルネックというのは概ね正しいと思う。
614デフォルトの名無しさん:2006/05/18(木) 14:26:27
Digesterのルールを自動生成するeclipseプラグインなんてあるのだろうか・・・
615デフォルトの名無しさん:2006/05/18(木) 15:05:29
commonsみたいな、ユーティリティをフリーで提供している団体ってあるのかなぁ・・・
616デフォルトの名無しさん:2006/05/18(木) 17:49:22
>>615
xerial.org
617デフォルトの名無しさん:2006/05/19(金) 13:31:20
大きなフレームワークを駆使するよりも、
細かいcommonsをフル活用したほうが作業効率がかなり上がるような・・・
まぁ、比較する対象としてはおかしいけど。
618デフォルトの名無しさん:2006/05/19(金) 14:24:07
>>617
commonsをあさって機能を試して・・・というのにどのくらい時間がかかるか。
619デフォルトの名無しさん:2006/05/19(金) 15:58:34
>>618
いや、そんなに掛からない。
620デフォルトの名無しさん:2006/05/19(金) 16:23:37
>>618
commonsを知って試しに使ってみるまで3時間くらいかかりました
621デフォルトの名無しさん:2006/05/19(金) 19:04:22
>>620
そーかなぁ・・・。API見たらわかりやすかったから
結構直感的にいけたけど・・・
622デフォルトの名無しさん:2006/05/19(金) 19:20:14
Commons次第。
Collections、IO、FileUploadあたりなら、APIとUser Guide見ればすぐ使えるけど、
Digester、Validatorあたりだと、API見てすぐに、とは行かないと思う。
623デフォルトの名無しさん:2006/05/19(金) 22:44:19
>>620
その試した機能を自分で実装したら3時間で済んだのか?
624デフォルトの名無しさん:2006/05/19(金) 23:19:44
ライブラリによっては依存関係や
バージョン違いに
引っかかってCommonsライブラリを使えるようになるのに
何日もかかったことがあったな俺は。

Maven2が出てからその手間も大幅に省けるようになったのが嬉しい。
625デフォルトの名無しさん:2006/05/24(水) 18:06:26
strutsのaction-mappingのformの検索をしているのですが、
ファイル検索だと、関係ない箇所のまで名前一致で引っかかるので苦労しております。
xmlのスキーマを理解し、<a><b>xxx</b></a>だと、<a><b>のxxxを探す、というプラグインはないでしょうか。
つまり、xmlファイルに対して、xpath検索できるものです。
626デフォルトの名無しさん:2006/05/25(木) 00:27:47
>>625
JXPathでちょちょいと実装、ってのじゃだめ?
大した手間じゃなさそうだし、好きに作れるじゃん。
627デフォルトの名無しさん:2006/05/25(木) 11:31:31
>>626
実はJXPathで実装して、検索できましたー!って思ったのですが、
検索はできても、その定義がファイルの何行目であるかの情報が取得できなくて断念しました。

ちなみに、JXPathで質問ですが、
ibatisの設定ファイルを読込むと、
設定ファイルのdtd設定が下記のようにしてあり、
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-config-2.dtd">
どうも、www.ibatis.comにアクセスしています。
ネットワークにつながらない環境なので、エラーになってしまします。
ソースは↓です。
DocumentContainer location = new DocumentContainer(XXClass.class.getResource("/jxpath/sql-map-config.xml"));
JXPathContext context = JXPathContext.newContext(location);
ネットワークにつなげない方法などあるのでしょうか?
628デフォルトの名無しさん:2006/05/25(木) 23:01:26
>>627
sql-map-config-2.dtd を落としてくるか、配布ファイルのどっかに入ってるだろうから
それを設定ファイルと同じディレクトリに置いて

<!DOCTYPE beans SYSTEM "sql-map-config-2.dtd">

に変えてみたらどう?
確か PUBLIC じゃなく SYSTEM使えばローカルファイル見てくれたと思った。
今試してないんで、やってみ。
629628:2006/05/25(木) 23:03:33
間違えた。

<!DOCTYPE sqlMapConfig SYSTEM "sql-map-config-2.dtd">

だねきっと。

あと

× 今試してないんで、やってみ。
○ 今試せないんで、取りあえずやってみ。

と書くつもりだった。
疲れてんなーorz
630デフォルトの名無しさん:2006/05/26(金) 11:12:57
>>628
ありがとうございます。
取り合えずレス見る前にやってみたのは
"jar:file:C:/xxx/ibatis-sqlmap-2.jar!/com/ibatis/sqlmap/engine/builder/xml/sql-map-config-2.dtd">
でいけました。
クラスパスからの検索ができれば、フルパスを書かなくてもよく、環境依存しないのですが・・・

ちなみに、超強引な方法として、extends DocumentContainerしたクラスを作成し
public Object parseXML(InputStream stream) {
String data = IOUtils.toString(stream);
//正規表現で"<!DOCTYPE.*?dtd\">"を空に変更。
} catch (IOException e) {
throw new RuntimeException(e);
}
stream = IOUtils.toInputStream(data);
return super.parseXML(stream);
}
のクラスを使用してもうまくいきました。
631デフォルトの名無しさん:2006/06/01(木) 15:00:17
FTP超つかえる
超感動
f = new FTPClient();
f.connect("xxxx");
f.login("xxx", "xxx");
FTPFile[] files = f.listFiles("xxx");
632デフォルトの名無しさん:2006/06/02(金) 12:15:59
>>631
sftpではどうしたらいいの?
633デフォルトの名無しさん:2006/06/02(金) 14:45:04
634デフォルトの名無しさん:2006/06/03(土) 00:44:13
>>633
Commons NetじゃなくてCommons VFSにあるんだね。
なんでだろ?
635デフォルトの名無しさん:2006/06/18(日) 02:52:24
Commonsじゃないけど

HttpComponents
http://jakarta.apache.org/httpcomponents/

こんなんあるんだね。
今日初めて知った。

Http直に触る必要がある時とかにSocket叩くよりは便利、って感じなのかな?
誰か使ってる人いる?
636デフォルトの名無しさん:2006/06/19(月) 01:04:51
HTTPClientの次期バージョンが独立しただけでは?
637デフォルトの名無しさん:2006/06/21(水) 22:14:34
>>636
え?そうなの?
じゃあHttpClientはいづれなくなっちゃうのか。
638デフォルトの名無しさん:2006/06/21(水) 22:32:42
Commonsからはなくなる
ただ、まだbetaなのでVer3はのこしている、だったかな
639デフォルトの名無しさん:2006/06/22(木) 00:22:05
>>638
なるほど〜。ありがとう!
じゃあこれから覚えるにはこっちのがいいかもだねー。
640デフォルトの名無しさん:2006/06/23(金) 18:38:31
ibatisのSqlMapClientは、スレッド毎にbuildしないといけないのでしょうか?
1つのSqlMapClientはでかいので、何とか1つにしたいのですが。
641デフォルトの名無しさん:2006/06/25(日) 16:34:55
>>635
今alpha2が出てるんで色々と使ってるけど、SSL周りがあやしい、超あやしい。テストしてない予感。
接続を切る時に
java.lang.UnsupportedOperationException: The method shutdownOutput() is not supported in SSLSocket
が出る(当方 java 1.4.2_12-b03、1.5.0_07-b03でも出る)。
英語が苦手だけど、調べてみるとSSLってhalf-openはよくないらしい?で、J2SE 1.4からサポートしなくなった、みたい?(いずれにしても、closeする時はthis.socket.close()の一発でOKみたいだ)
だれか、プロジェクトに通報してやってくれ!

[AbstractHttpConnection.java:153-161]
        try {
            this.socket.shutdownOutput();
        } catch (IOException ignore) {
        }
        try {
            this.socket.shutdownInput();
        } catch (IOException ignore) {
        }
        this.socket.close();
642デフォルトの名無しさん:2006/06/25(日) 17:54:47
>>641
英語苦手だからなぁ・・・。
そもそもJakartaプロジェクトとかにこーゆーバグとかを報告する手順ってどうやるの?
誰か詳しい人、解説して下さい。
643デフォルトの名無しさん:2006/06/26(月) 17:47:13
>>640
自己解決。複数スレッドで使いまわしOKだった。
644デフォルトの名無しさん:2006/06/30(金) 23:55:53
>>642
最近だとJiraを使う。

ttp://issues.apache.org/jira/browse/HTTPCLIENT
この辺でどう?
645デフォルトの名無しさん:2006/07/04(火) 21:06:55
時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)

i−want−to−study−java@hotmail.co.jp
(アドレスは全角で書いてあるので半角に直してください)
よろしくおねがいします
646デフォルトの名無しさん:2006/07/04(火) 21:50:13
>>645
なにこれ?
647デフォルトの名無しさん:2006/07/04(火) 22:06:14
>>646
JAVAスレの保守
648デフォルトの名無しさん:2006/07/04(火) 22:32:27
>>645
http://java.sun.com/docs/books/jls/third_edition/html/j3TOC.html
コレを読めwwwwwwマジオススメwwwwwwwww
まさにjavaのバイブルwwwwwww
649デフォルトの名無しさん:2006/07/05(水) 03:43:06
言語仕様だけわかってもなあ…
せめてJakartaくらい押さえんと。
650デフォルトの名無しさん:2006/07/05(水) 03:59:29
押さえても押さえても抜け落ちていくJakartaかな
651デフォルトの名無しさん:2006/07/05(水) 12:03:03
じっと手を見る
652デフォルトの名無しさん:2006/07/05(水) 15:17:09
トンヘの小島の磯の白砂に
ウリ泣き濡れてカニとたはむる
653デフォルトの名無しさん:2006/07/06(木) 00:04:12
ところで今、Jakartaって何があるの?
654デフォルトの名無しさん:2006/07/06(木) 00:10:56
>>653
聞いて回答を待つより見た方が早いと思うけど・・・
http://jakarta.apache.org/
655デフォルトの名無しさん:2006/07/06(木) 12:07:19
>>653
ココが分かりやすい
ttp://www.biwa.ne.jp/~x208403/

>>654
ボケろということだろ・・・
656デフォルトの名無しさん:2006/07/06(木) 14:37:44
WEBサーバのメンテ、だいぶかかってるな・・・
6571:2006/07/07(金) 01:50:00
はじめましてはじめともうします。

common-fileuploadを利用したファイルアップロードクラスを
作成したいのですが、うまくいきません。
commons-fileuploadのServletのサンプル(doPostメソッド
による処理)ではうまくいくのですが・・・

uploadClassの
List objLst=objDfu.parseRequest(request);
の値がnullになることまでは確認できましたが
なぜそうなるのかが分からない状態です。

大変恐縮ですがご指摘・ご教授の程お願いします。

6582:2006/07/07(金) 01:52:05
---------------------------------
Action
---------------------------------
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import test.uploadClass;
public class testAction extends Action {
  public ActionForward execute(ActionMapping mapping,
  ActionForm form,
  HttpServletRequest request,
  HttpServletResponse response)throws Exception {

    // アップロードクラスをインスタンス化
    uploadClass uploadclass = new uploadClass();

    // アップロードを実行
    uploadclass.upload(request,response);
    return mapping.findForward("success");
  }
}
6592:2006/07/07(金) 01:53:42
---------------------------------
ActionForm
---------------------------------
import org.apache.commons.fileupload.DiskFileUpload;
import org.apache.struts.action.ActionForm;
import org.apache.struts.upload.FormFile;

public class testForm extends ActionForm{
    private DiskFileUpload files;

    public DiskFileUpload getFiles() {
      return files;
    }
    public void DiskFileUpload (DiskFileUpload files) {
      this.files = files;
    }
}
6602:2006/07/07(金) 01:55:51
public class uploadClass extends HttpServlet {
  public void upload(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException{

    //String path = getServletContext().getRealPath(".");
    String path = new String(".");
    DiskFileUpload objDfu = new DiskFileUpload();
    objDfu.setSizeMax(-1);
    objDfu.setSizeThreshold(1024);
    objDfu.setRepositoryPath(path);
    objDfu.setHeaderEncoding("Shift_JIS");

    try {
      List objLst=objDfu.parseRequest(request);
      Iterator objItr=objLst.iterator();
      while (objItr.hasNext()) {
        FileItem objFi=(FileItem)objItr.next();
        if (!objFi.isFormField()) {
          String strNam=objFi.getName();
6612:2006/07/07(金) 01:57:32
          if (strNam!=null && !strNam.equals("")) {
            strNam=(new File(strNam)).getName();
            objFi.write(new File(path + "/" + strNam));
          }
        }
      }
    } catch (FileUploadException e) {
      e.printStackTrace();
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
}

662デフォルトの名無しさん:2006/07/07(金) 12:26:05
オフィシャルのFAQにそれっぽいのがあるけど、確認した?
663デフォルトの名無しさん:2006/07/08(土) 02:54:08
Jakartaの名前の由来って何?検索しても都市しかでてこない
664デフォルトの名無しさん:2006/07/08(土) 03:39:45
ジャワ島(Java島)にある都市ジャカルタだろ。
665デフォルトの名無しさん:2006/07/08(土) 08:19:14
SunがJDWSDK(その後のTomcat)をASFに寄贈した時に調印を行った会議室の名前。
666デフォルトの名無しさん:2006/07/09(日) 00:38:34
へートリビアだな
667デフォルトの名無しさん:2006/07/17(月) 20:57:15
時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)
よろしくおねがいします
i−want−to−study−java@hotmail.co.jp
教える対象は超初心者です。

専門学校などでJavaを勉強されていて夏休みだけ教えたいという方も歓迎です
668WildBoa:2006/07/17(月) 21:50:39
DataBaseへの接続設定ファイルの保存用にXMLを使用しようとして勉強をしております。

@ITにおいて、Digesterの解説があったので、これをサンプルとして、動作させようとしてます。
記事:ttp://www.atmarkit.co.jp/fjava/rensai2/jakarta04/jakarta04.html#list2
ソース:ttp://www.atmarkit.co.jp/fjava/rensai2/jakarta04/sample.zip

ところが、ClassNotFoundExceptionが発生して、実行できません。
大変恐縮ですが原因・対応のご教授をお願いします。

発生したエラー
2006/07/17 21:40:46 org.apache.commons.digester.Digester startElement
致命的: Begin event threw exception
java.lang.ClassNotFoundException: net.skirnir.sample.DataSourceConfig

環境
OS :WindowsXP Home SP2
JDK:1.5.0_07
IDE:ECLIPSE 3.1.1(コンパイラー準拠レベルでJDK1.4を指定)
commons-digester:1.7
commons-beanutils:1.7
commons-collections:3.2
commons-logging:1.1

以上です
669デフォルトの名無しさん:2006/07/17(月) 22:00:12
670デフォルトの名無しさん:2006/07/17(月) 22:01:14
Digesterは結構バージョンによってタグや属性名が変更になってるから注意が必要
Webページの解説がどこもてんでばらばらなんで
DigesterのDTDを読んだ方がいいよ
671デフォルトの名無しさん:2006/07/18(火) 13:24:26
>668
添付のソースをコンパイルして、
しかるべき場所にクラスパス通した?
zip の中の構造がパッケージ無視してるっぽいんだが。
672WildBoa:2006/07/19(水) 01:01:55
>670,671
ありがとうございます。

ソースを「\net\skirnir\sample」において
コンパイル・実行しております。
又、「config.xml」は「.\」においております。
各ライブラリはJREの「\lib\ext\」に展開してありますが、
他に何か設定が必要になるのでしょうか?

>しかるべき場所にクラスパス通した?

何処かクラスパスを通す必要があるのでしょうか?
673デフォルトの名無しさん:2006/07/19(水) 06:44:41
¥net¥skirnir¥sampleなら¥にクラスパス通さなきゃ
674デフォルトの名無しさん:2006/07/19(水) 08:20:47
>各ライブラリはJREの「\lib\ext\」に展開してあります
おい!ちょっと待て!
675デフォルトの名無しさん:2006/07/19(水) 10:30:14
>672
Digester に手を出す前にまずやるべき事が有りそう。
Digester 固有の問題じゃないので
とりあえずしかるべき場所(初心者スレなど)で
環境設定の仕方を聞いてきた方が良いよ。
676WildBoa:2006/07/19(水) 23:15:25
>674様、
Jakarta CommonsのライブラリをJREのlib\extに展開している件ですが、
何かまずかったでしょうか?

作成したプログラムは配布しないのですが...
JavaHouseの下記のスレッド程度は理解しているつもりなのですが...
>ttp://java-house.jp/ml/archive/j-h-b/037700.html

677デフォルトの名無しさん:2006/07/19(水) 23:31:23
>>676
使い方を間違っている。
特定のアプリで利用するライブラリを置く場所ではない。
そこは、JVMそのものを拡張するとかJVMにパッチを当てる的な使い方をする場所。
そのJVM上で動作する全てのアプリに影響する。

そのJVMを、そのアプリでしか使わないことが保証されているなら、事実上問題は起きないことにはなるが・・・
それでも「とりあえず、動けばOK」的な発想。

そのJavaHouseのスレッドを、ごく表面的にしか理解できていないようだね。
678WildBoa:2006/07/19(水) 23:42:38
>JVMそのものを拡張するとかJVMにパッチを当てる的な使い方をする場所。

677様、ご教授ありがとうございます。

674様、
ECLIPSEの「構成およびデバッグ」のクラスパスタブで、
ユーザーエントリーに\と\net\skinr.sampleを追加しておりますが、
追加の仕方に問題があるのでしょうか。
679デフォルトの名無しさん:2006/07/20(木) 00:00:03
>>672
\net\skirnir\sample\において、さらに実行している場所は
ちゃんと「\」なんだろうね。

あと、「.」がクラスパスに入っていないに1ドル。
680デフォルトの名無しさん:2006/07/20(木) 00:00:21
>>678
問題有り。
余計な設定をして、必要な設定をしていない。

>ECLIPSEの「構成およびデバッグ」のクラスパスタブで、
>ユーザーエントリーに\と\net\skinr.sampleを追加しておりますが、
これは不要。Eclipseはソース・フォルダーは自動的にビルドパスに追加される。

そして、アプリで利用するJarファイルをビルドパスに含めなければならない。

Digester以前に、基礎から学ぶべきコトが多そうだな。
681WildBoa:2006/07/20(木) 00:30:47
皆様ありがとうございました、解決しました。

680様の指摘どおり、ビルドパスが問題でした。
コードがコンパイルできていたので、安心しきっていました。

追伸
679様、WindowsのJava環境では「.」はデフォルトでクラスパスに
含まれておりませんでしたでしょうか?
682デフォルトの名無しさん:2006/07/20(木) 09:23:59
>>681
まーインストーラは . をクラスパスに入れてたような記憶があるけどね。
SET CLASSPATH すりゃ判るじゃん。
環境変数なんざいくらでも変更できちまうんだから、
デフォルトを信用しすぎないほうが安全だと思われ。
683デフォルトの名無しさん:2006/07/20(木) 09:59:15
>>681
どこにもclasspathを設定していない場合のみね。
デフォルト値なんてEclipseや環境変数の設定次第でいくらでも上書きされる。

ホント、中途半端な知識だね。
684デフォルトの名無しさん:2006/08/22(火) 13:11:26
遅レスだが、CLASSPATHのミスといい、lib\extの使い方といい
QuickTime作ってる人かと思ってしまったw
685デフォルトの名無しさん:2006/09/24(日) 04:51:27
てs
686デフォルトの名無しさん:2006/10/13(金) 02:14:30
BeanUtils.describe(bean); 経由の
シリアライズが超速いと不思議に思ってたら
このメソッドって配列無視しちゃうのね orz

どなかた別にCommonsじゃなくてもよいので、この問題に対応した
Map <-> JavaBeanの相互変換ライブラリ知りませんか?
687デフォルトの名無しさん:2006/10/14(土) 07:45:45
>>686
PropertyUtils.describeの方は確か配列もきちんと変換してくれるはず
688デフォルトの名無しさん:2006/10/14(土) 18:14:36
>>687
どうもありがとう。
689デフォルトの名無しさん:2006/10/15(日) 00:26:16
>>633-634
それ不安定だったのでおれJsch使ってる
690デフォルトの名無しさん:2006/10/15(日) 00:27:09
>>641
SSL3.0やTLSに対応していないとか?
691デフォルトの名無しさん:2006/10/15(日) 00:28:34
>>655
おもろいw
692デフォルトの名無しさん:2006/10/15(日) 00:29:36
>>657-661
>>1でも>>2でもないのに名前欄に1とか2とかかかないでくれ
693デフォルトの名無しさん:2006/10/16(月) 01:36:09
SCXML使ってる人、いるかい?
694デフォルトの名無しさん:2006/10/16(月) 01:58:44
最近、Jakarta CommonのMLのSubjectに[SCXML]と
名がつくメールが良く来るが、一体どんなもんなのだ?
695デフォルトの名無しさん:2006/10/16(月) 02:49:30
>>694
ちょっとはぐぐれよ。
696デフォルトの名無しさん:2006/11/04(土) 21:49:28
今、Commons-Dev MLで
Generics対応Collectionsを既存のCollectionsのサブパッケージに
するかどうか投票をしているようだ。


なんでそんなことが必要なのか流れを読んでいないのでわからないけど
俺個人としてはJava5のコレクションフレームワークの
ようにそのまま使えるよう分離させないで欲しいなと思っている。


697デフォルトの名無しさん:2006/11/04(土) 21:52:20
あげ忘れた

よくMLを読んでみるといくつかのクラスの削除またはリネーム
などについて議論しているようだ


> - BoundedCollection should be deleted/renamed to Bounded
> new Bounded interface would not implement Collection, allowing it to be
> implemented by Maps as well as Collections
>
> - UnmodifiableBoundedCollection should be deleted
> Just use the isFull/maxSize methods on CollectionUtils or similar
>
> - AbstractSerializedCollectionDecorator should be deleted
> Serialization can now be rolled up into the base decorator
> This simplifies a lot of code
> It wasn't done originally due to back-compat
>
> - TransformedCollection will need some thinking about to generify, as a
> transformer can change object types
>
> - Consider adding a Decorator interface
> This would provide a single method decorated() that obtains the
> collection that has been decorated.
> Whilst useful, this is also potentially dangerous exposure of state.
>
> - Consider adding a Container interface
> This would be a base super interface for Collection and Map (but
> obviously we can't hack the JDK.
>
> - Consider whether UnmodifiableCollection should be deleted as it
> duplicates the JDK.
698デフォルトの名無しさん:2006/11/06(月) 10:12:59
10個の要素があるリストで、5、6、7、8、9,10,1,2,3,4って順にまわしてくれる
iteratorないですか?
5でnextがfalseになるような感じです。
699デフォルトの名無しさん:2006/11/06(月) 10:20:57
開始する要素が固定とかだったら、自分で書いた方が早いんじゃない?
700デフォルトの名無しさん:2006/11/06(月) 12:01:25
>>698
なんで10の次が1になるのか。
まず最初に5から読み込むがいきなりfalseになって
結局回らない。

何がいいたいのかわからない。
701デフォルトの名無しさん:2006/11/06(月) 12:30:02
こういうコンパイラ以上のことが出来ないやつは一生底辺プログラマだな
>698
それ位はさすがに自分でコード書こう
応急処置としてsubListでばらして繋ぎなおすとか。
702デフォルトの名無しさん:2006/11/06(月) 17:08:40
>>698の日本語が変なので
具体的に彼が何がしたいのかよくわからない
703デフォルトの名無しさん:2006/11/06(月) 17:17:41
>>702
要は、開始位置が指定できて、リストが持っている配列の最後にきたら先頭に戻るようにして
終了のタイミングは開始位置の1つ前、って事でしょ。わかれよ
704デフォルトの名無しさん:2006/11/06(月) 17:32:35
test
705デフォルトの名無しさん:2006/11/06(月) 17:33:49
で、そんなよく使うわけでもないモノはcommonsには無いし、書くのも簡単だから書けば。
で終了。
706デフォルトの名無しさん:2006/11/06(月) 17:37:51
>>703
Bufferでやりたくなってくる
707デフォルトの名無しさん:2006/11/06(月) 17:43:15
>>706
List から Buffer への変換やるのか。面倒くさそう。
708デフォルトの名無しさん:2006/11/06(月) 17:50:06
Iteratorを継承して自作すればいい
709デフォルトの名無しさん:2006/11/06(月) 17:51:58
>>703
それでも>>698の言っている意味と合致していないような気がするが。

最後に5でnextがfalseになるようにしたい?


俺は、まずソートしてからIteratorを回したいと>>698
主張しているように見えたぞ

710デフォルトの名無しさん:2006/11/09(木) 23:59:03
LoopingIterator
711デフォルトの名無しさん:2006/11/10(金) 00:04:09
「作ればいいじゃん」でFAですね。
712デフォルトの名無しさん:2006/11/10(金) 00:06:58
713デフォルトの名無しさん:2006/11/10(金) 10:48:27
>>710
それじゃ永久ループじゃん。
714デフォルトの名無しさん:2006/11/10(金) 18:57:49
ToStringBuilder.reflectionToStringのネスト機能が欲しい・・・
715デフォルトの名無しさん:2006/11/10(金) 20:58:45
そういうときこそ、自作すればいいじゃないか。
そしてパッチをCommonsに提供するんだ。
そうすれば知名度が上がるかもしれないぞ。

つか、EclipseのCommons4Eプラグインを使えば
ある程度自動化できるんじゃないのか?
716デフォルトの名無しさん:2006/11/10(金) 22:24:56
Iteratorなんて滅茶苦茶シンプルなインタフェースなんだから探すより作った方が早いよ。
717デフォルトの名無しさん:2006/11/13(月) 15:52:40
JRCS・・・なくなった。
diffも使えなくなった・・・
718デフォルトの名無しさん:2006/11/14(火) 09:47:19
commonsにchainってあったんだ。
struts1.3でも使っているみたいだね。
ovserveもあるといいかも。
719デフォルトの名無しさん:2006/11/14(火) 09:55:28
Chain of Responsibilityパターンが実現できる
あのAPIか
720デフォルトの名無しさん:2006/11/14(火) 11:27:16
unixでいうところのbashのreadlineのライブラリに似たものはcommonsにないですかね。
721デフォルトの名無しさん:2006/11/14(火) 11:29:29
>>719
そうそう。
springって単純にnewの内容を設定ファイル化できるけど、
それじゃ処理の流れを変更できないので、
spring+chainの軽量ライブラリがあればbestなんだけど。
722デフォルトの名無しさん:2006/11/14(火) 11:53:14
>>720
commonsじゃないけど、sourceforgeにJava Readlineっつうのがあったよ。
ttp://java-readline.sourceforge.net/
723デフォルトの名無しさん:2006/11/20(月) 11:32:29
ConfigurationのXPathExpressionEngineって、XMLConfiguration をxpath検索できるのかな?
jxpathの絡んでる?
724デフォルトの名無しさん:2006/11/21(火) 09:46:42
ArrayIntList結構便利かも。
725デフォルトの名無しさん:2006/11/21(火) 12:27:59
>>723
それ使ったことがないからわからないけど
Configurationは不安定でファイルをオートリロードするストラテジも
ろくに機能しないし、ファイル書き込みも意味不明でどこの
ディレクトリパスなのかさっぱりわからない不具合がおきるし(save()メソッドの
挙動が変。絶対パスなのか相対パスなのかイマイチ)。
726デフォルトの名無しさん:2006/11/21(火) 14:38:51
>>725
最近バージョン上がったよ。
細かくは試していないけど。
727デフォルトの名無しさん:2006/11/27(月) 22:59:05
JSP2.0のEL部分だけ取り出したようなライブラリってCommonsにないんかな。
変数入れたMapと文字列渡すと実行できるようなやつ。

静的なメソッド呼び出しを関数に割り当てできるとベスト。
設定に数式を入力できないとヤダとか言い出すヤツが多くて困る…
728デフォルトの名無しさん:2006/11/27(月) 23:18:02
Jakarta Commons EL
729デフォルトの名無しさん:2006/11/28(火) 00:16:00
>>728
それはJSP用のELやん。

Expression#evaluateがjavax.servlet.jsp.el.VariableResolver使うから避けたい。
このライブラリで言うと、
引数はorg.apache.commons.el.VariableResolverになってるやつが欲しい。
んで、JspVariableResolverとMapVariableResolverって感じでAdapterがあると単独で使いやすい。
ついでに言うと、Expressionにはevaluate(Map)な簡易メソッドがあると最高。
730デフォルトの名無しさん:2006/11/28(火) 00:25:08
Jakarta Commons JEXLはどうなん?
> Java Expression Language (JEXL) is an expression language engine
> which can be embedded in applications and frameworks.
ってあるけど。
731デフォルトの名無しさん:2006/11/28(火) 00:44:55
>>730
おぉ、パッと見はよさげ。サンクス。
式って言うか、ちょっとスクリプト寄り?
意図しないstaticメソッド呼び出しができないようになってれば
変数入れたMapとの変換で何とかなるかな。

今筋トレ中なので、明日にでも試してみるよ。
732デフォルトの名無しさん:2006/11/28(火) 13:27:00
OROの話題ですが、置換で$1が使えますが、(??{ code }) は使えるでしょうか。
codeは、Perlにおいて、埋め込まれたPerlコードを実行してその結果を正規表現を表すものとして使用します。
らしいですが、javaのメソッドなど呼べたら便利かなと。

つまり、メソッドを登録しておき、そのメソッドにマッチした部分の引数をOROがわで渡すことができればOKなのですが。
733デフォルトの名無しさん:2006/11/28(火) 13:43:55
PropertyUtils#setProperty()でセットできる対象はsetterがあるプロパティだけだけど、
setterがないものにもセットできるものはないかな?
ToStringBuilderあたりはその辺強引にやっているらしいけど
734デフォルトの名無しさん:2006/11/28(火) 14:24:22
>>732
多分Oro単体では無理。
GroovyやBeanShellみたいなスクリプティングエンジンと組み合わせれば多分可能。
735デフォルトの名無しさん:2006/11/29(水) 00:07:47
IOUtils1.2にあるProxyReaderとかのProxy〜系ストリームクラスってJDK標準のFilter〜系クラスと何が違うんですか?
それぞれFilter系クラスを拡張してあるようなのですが、いまいち何のために使うべきなのかわかりません。
736デフォルトの名無しさん:2006/11/29(水) 13:29:22
A Proxy stream which acts as expected, that is it passes the method calls on to the proxied stream and doesn't change which methods are being called.
It is an alternative base class to FilterReader to increase reusability, because FilterReader changes the methods being called, such as read(char[]) to read(char[], int, int).

FilterReader がメソッドのシグネチャを変えやがるから
Reader のシグネチャと同じになるようにしたやつを作った。

らしい。
737デフォルトの名無しさん:2006/11/30(木) 09:48:59
>>722
nativeのライブラリ使ってるだけだった。
ナンだよそれって感じ。
環境依存するので使用はボツ
738デフォルトの名無しさん:2006/11/30(木) 10:28:31
>>737
コンソール使ってる時点で環境依存はやむを得ない。
739デフォルトの名無しさん:2006/11/30(木) 10:54:20
log4jで、設定ファイル中のログレベルを変更した場合、アプリ再起動しないで即時更新させることはできますか?
運用中にレベルを変更することは結構あると思うので・・・
740デフォルトの名無しさん:2006/11/30(木) 23:19:40
ログファイルの変更を監視すればいいんじゃない?
741デフォルトの名無しさん:2006/12/01(金) 08:21:05
742デフォルトの名無しさん:2006/12/01(金) 11:15:47
>>741
そんな面倒なことしなくても、タイムスタンプを見てから
DOMConfigurator.configureを実行すれば、ロガーの追加もレベル変更も即時更新。
743デフォルトの名無しさん:2006/12/01(金) 14:21:01
>>742
ほんまや
744デフォルトの名無しさん:2006/12/01(金) 16:44:04
DOMConfigurator.configureAndWatchでよくね?
745デフォルトの名無しさん:2006/12/02(土) 02:43:17
>>742,744
739じゃないけど、kwsk教えてください
746デフォルトの名無しさん:2006/12/04(月) 15:05:25
747デフォルトの名無しさん:2006/12/08(金) 21:08:33
XMLConfiguration、HierarchicalConfiguration超使える。
これで書き込みができれば最高
748デフォルトの名無しさん:2006/12/11(月) 10:47:57
IOUtilsのFileUtils.listFilesでファイル検索が簡単にできるけど、

/home/*/bin/*.sh とかのワイルドカード検索はできないんだね。
ワイルドカードのフィルターはあるけど・・・
749デフォルトの名無しさん:2006/12/11(月) 13:05:53
>>747
XMLのほうは書き込みやリロードのバグがあったが
直ってるか?
750デフォルトの名無しさん:2006/12/11(月) 14:19:04
>>749
ぽいよ。
751デフォルトの名無しさん:2006/12/15(金) 19:58:22
CollectionのBagで数が多い順に取り出す方法はありますか?
752デフォルトの名無しさん:2006/12/20(水) 10:08:56
AbstractMapBagに
/**
* Mutable integer class for storing the data.
*/
protected static class MutableInteger {
/** The value of this mutable. */
protected int value;

/**
* Constructor.
* @param value the initial value
*/
MutableInteger(int value) {
this.value = value;
}

public boolean equals(Object obj) {
if (obj instanceof MutableInteger == false) {
return false;
}
return ((MutableInteger) obj).value == value;
}

public int hashCode() {
return value;
}
}
ってあるけど、何でInteger使わないんだろ。メモリの削減になるわけでもないような。
ツーか頻繁に変えるなら、plus()minux()のメソッド作ってデータの変更のたびにnewしないようにすればいいのに・・・
753デフォルトの名無しさん:2007/01/02(火) 22:26:57
Commons Modelerで下のようなコードを書いたのだがMbeanとして登録されない。
間違いを教えてください。

MbeanTest test = new MbeanTest();


ObjectName name = new ObjectName("test.MbeanTest:name=tests");

Registry registry = Registry.getRegistry(null, null);

registry.registerComponent(test, name, null);


754デフォルトの名無しさん:2007/01/02(火) 23:26:28
Collectionsもいい加減にはよGenericsとアノテーション対応させてくんろ
755デフォルトの名無しさん:2007/01/03(水) 00:03:40
>>753
何も問題ないよ?お前の環境がおかしいんじゃないの?
756デフォルトの名無しさん:2007/01/09(火) 15:00:19
Digesterくそ
XMLDecoder最高!
757デフォルトの名無しさん:2007/01/09(火) 17:39:59
<object class="Hoge">
 <void property="fuga">
  <string>henyo</string>
 </void>
</object>

よりも

<hoge fuga="henyo"/>

って書きたくね?

Relaxer なり JAXB なりに逃げる。
(XML やめて JYaml って手も。)

Commons だと Betwixt なんだろうけど、どうも使いにくい。
758デフォルトの名無しさん:2007/01/09(火) 22:23:19
Commonsである必要はないんだけど
ゲーム用のライブラリもしくはフレームワークって何かありません?
759デフォルトの名無しさん:2007/01/09(火) 22:32:40
>>758
広すぎる。とりあえずこの辺でも読んでみたら?
ttp://www.amazon.co.jp/dp/4797318422
760デフォルトの名無しさん:2007/01/09(火) 23:53:34
XML扱うならSEでも標準APIになったJAXBだろ
761デフォルトの名無しさん:2007/01/20(土) 20:36:52
Langから特定の1メソッドだけこぴってつかった場合、ライセンスはどうすりゃいいの?
762デフォルトの名無しさん:2007/01/20(土) 20:48:01
>>761
Apache Licenseに従う。
763デフォルトの名無しさん:2007/01/20(土) 21:07:19
commons-loggingとlog4jって両方ないと使えないのですか?
764デフォルトの名無しさん:2007/01/20(土) 21:31:48
tukaeru
765デフォルトの名無しさん:2007/01/20(土) 23:58:06
commons-loggingはlog4jが使えれば使い
なければ別のロガーを使う
766デフォルトの名無しさん:2007/01/21(日) 00:51:48
commons logging 意味ねー。
Log4J 使ったら他のロガーは低機能すぎて使わんのだから
最初から Log4J にするし。
commons logging に依存するぐらいなら Log4J に依存するのも変わらん。
767デフォルトの名無しさん:2007/01/21(日) 00:55:24
>>766
しかしcommons loggingがないと動かないライブラリが山ほどあるので、
commons loggingからは逃げられないという現実。Jakarta周りはほとんどそうだ。
768デフォルトの名無しさん:2007/01/21(日) 10:52:21
実際、log4j以外に使われてるロガーってほとんど無いよな?

commons-logging→log4jって経由するより
log4jオンリーでいってもらう方がよっぽどいい。
769デフォルトの名無しさん:2007/01/21(日) 11:19:39
標準ロギングAPIはたまーにつかわれてるぞ
外部に何もライブラリが要らないってのはやっぱり便利だし
commonsだけ使いたいときなど

問題はcommonsLoggingと相性が悪いのが癌だが
まぁカスタマイズも手軽だしね

ほとんどのところはロギング処理はさらにカプセル化してるだろうからそんなに問題にはならないと思われ
770デフォルトの名無しさん:2007/01/22(月) 00:24:48
>>769
Log4J にログを出力した行やメソッド名をフォーマット指定で出力できる。
カプセル化してるとこはうざい。だいたい、その機能を殺してることを
分かってやってんのかも怪しい。
771デフォルトの名無しさん:2007/01/22(月) 01:29:46
>>768
しかしJava Logging APIも使い勝手が良いからな。
遅いけど。
Logger.global.finest()なんて書き方はよく好んで使う。
いきなりLogger.global.fine()って書くだけでいいんだから。
あとはEclipseなどでimport宣言を自動化すればいいだけ。

細かい設定はstaticイニシャライザに書いておくだけで名前の通り
グローバル変数のように機能してくれるからJava標準のLogger.globalはありがたい。


772デフォルトの名無しさん:2007/01/22(月) 01:32:42
Log4jはプロパティファイルをサーバの変なところに
置く不潔な使い方をする輩がいるからな。
それにJakarta Velocityの設定ファイルvelocity.properties
なども別のディレクトリに分散するとかなりウザイ。
プロパティファイルに書かれている内容を
Javaコードで書いてもいいのだが、それだと
設定を変更しづらいから嫌だとか、もうすでにこの
ディレクトリに置くと決めたからこの配置は二度とかえることが
できないとか頑固なことを言っていうことを聞かない奴がいるから
標準のJava Logging APIを使いたくなってくる。あれにもプロパティファイルはあるが。

773デフォルトの名無しさん:2007/01/22(月) 04:40:29
>>770は何を言いたいの?
774デフォルトの名無しさん:2007/02/02(金) 01:56:07
>>773
あれでしょ。ログ付帯情報として、常に内製のラッパークラスの情報が出力されるってことでしょ。
775デフォルトの名無しさん:2007/02/03(土) 03:24:11
Commons IO 1.3が出たそうだね。
ttp://journal.mycom.co.jp/news/2007/02/01/361.html
776デフォルトの名無しさん:2007/02/03(土) 22:53:35
>>775
何が変わったの?
777デフォルトの名無しさん:2007/02/05(月) 12:14:27
http://jakarta.apache.org/commons/io/upgradeto1_3.html

DirectoryWalker
FileUtils.touch
FileDeleteStrategy

個人的にはこの辺りがそそられる。
778デフォルトの名無しさん:2007/02/05(月) 13:25:05
touchってただ空ファイル生成、タイムスタンプ変更するUNIXのコマンドと同じだろ
779デフォルトの名無しさん:2007/02/05(月) 14:58:20
そうだけど。
780デフォルトの名無しさん:2007/02/06(火) 14:22:54
FileFileFilterって一瞬なんのことかわからなかった。
地味ながらFilterが充実してきた感じ
781デフォルトの名無しさん:2007/02/07(水) 23:32:35
俺的にはこれかな。

NullWriter
NullInputStream
NullReader
782デフォルトの名無しさん:2007/02/08(木) 09:51:10
commons-daemonって使ったことあります?
783デフォルトの名無しさん:2007/02/08(木) 10:05:54
>>756
JDKでこんな便利なものがあるんだ。Betwixtより使いやすい。
digester使ってたけどやめるわ

ただ、こういうものって引数なしコンストラクタないとだめだよね。
それを対応するとなると、もはやDIのレベル?
784デフォルトの名無しさん:2007/02/08(木) 13:40:58
JavaとXMLとの変換ならJAXB使え

XMLDecorderとかはシリアライズのためのものであって
特殊な用途に使うものだよ
785デフォルトの名無しさん:2007/02/08(木) 15:34:10
>>781
nullオブジェクトパターンを実現していると言うことか
786デフォルトの名無しさん:2007/02/08(木) 15:34:59
>>784
おれならCastorを使いたくなってくる。
JAXBってそんな使い良いのか?
787デフォルトの名無しさん:2007/02/08(木) 15:38:11
collectionsでSynchronizedMapだけなんでないんだ?
788デフォルトの名無しさん:2007/02/08(木) 15:42:21
>>784
ん〜、要は簡単なものがいい。
今のところ俺の中では 簡単=定義ファイルがない なので
XMLDecorderかな。
789デフォルトの名無しさん:2007/02/08(木) 16:10:09
勘違いしてるようだがJAXBって定義ファイルいらないぞ

それにJavaSEに実装されてるから外部ライブラリも要らない

フィールドに対してもプロパティアクセスにしても自動でやってくれるのがいい
もちろんプロパティ名とエレメント名と別にすることも自由自在
790デフォルトの名無しさん:2007/02/08(木) 17:06:32
>>789
1.4のSDKでは入ってないですか?
791デフォルトの名無しさん:2007/02/08(木) 17:46:58
1.4なんてもうすぐサポート切れるような古い環境のは古いJAXBしか動かない

新しいJAXB2.0はJ2SE5.0以上
そしてJavaSE6では標準装備
792デフォルトの名無しさん:2007/02/08(木) 18:09:29
>>791
weblogic8.1がJDK1.4なので、JDKを変更できない・・・
793デフォルトの名無しさん:2007/02/08(木) 18:16:10
>>792
そういうターゲットなら旧JAXBや他のライブラリでいいだろう

少なくともXMLEnco/Decoは用途が違うから使うなといいたい
普通のXMLとのやり取りはできないわけで
794デフォルトの名無しさん:2007/02/08(木) 18:57:03
公開鍵暗号化方式のライブラリってcommonsにありますか?
795デフォルトの名無しさん:2007/02/08(木) 19:31:36
Commons Codec
796デフォルトの名無しさん:2007/02/09(金) 00:00:45
>>794
標準APIだと不満?
797デフォルトの名無しさん:2007/02/09(金) 09:49:37
>>796
いえ、ぜんぜん。標準であるんでしたっけ?
798デフォルトの名無しさん:2007/02/09(金) 10:34:43
以前はJCEとして「拡張」扱いだったけど
今はJDK1.5以降は標準に含まれた模様。
799デフォルトの名無しさん:2007/02/09(金) 10:36:31
>>783
Betwixtはgetterがないフィールドも出力可能なので、XMLEncoder とはまた一味違う。
XMLEncoderはシリアライズ可能だが、対象がjavabeanのみなので、
それ以外を保存したい場合は
800デフォルトの名無しさん:2007/02/09(金) 11:20:36
>>795
MD5のこと?
これって不可逆のはずでは?違いましたっけ。
801デフォルトの名無しさん:2007/02/10(土) 00:29:28
>>784
Jaxbはダメだよ。XMLSchema使える奴がほとんどいない上に、一年もしたら文法忘れるから
別の開発者はおろか、本人にも保守できないようになる。

その結果、本質的には同じクラスに入るべき情報が別クラスとして後付されたりするから
ほんとわけわかんない状態になる。
802デフォルトの名無しさん:2007/02/10(土) 00:52:36
>>801
JAXBはXMLスキーマつかわんぞ
いつの時代の人だ
803デフォルトの名無しさん:2007/02/10(土) 01:14:06
>>802
二年前にガンガンXMLSchema使ってたんだけどな…。
今はアノテーションなのか。

つーか、そうなると二年前のjaxbの売り文句は殆どが幻想になってるんだな。
はっきり言って詐欺の領域に入るほどの不誠実さだ。
804デフォルトの名無しさん:2007/02/10(土) 01:19:48
アノテーションもルートエレメント指定だけでいいしな
どうやらバインディングの考え方を大きく変えたのようで、JAXWSで使用してもシンプルに使えるためのものという感じになったのが大きいか
おかげでJAX-RPCとJAX-WSと互換性がなくなったが

なによりもいいのがJavaSE標準APIになったことで外部ライブラリが要らないことだな
JCEにしろJAXPにしろJDBCにしろSEでの標準API化は大きい
あとJAXWSも標準できたのは正直驚いた

EJB3にしてもDI化したしJavaEE5はJ2EE1.4までとは次元が違いすぎる
805デフォルトの名無しさん:2007/02/11(日) 23:56:20
でもやっぱりどこか古臭いんだよなEJB3って。。
806デフォルトの名無しさん:2007/02/12(月) 00:47:57
古臭いって去年の春にでたばかりだろ。
807デフォルトの名無しさん:2007/02/12(月) 04:11:56
EJB 使う奴はもう頭弱い奴しかいないだろ。
そりゃ、IBM とかの大手企業や @IT とか、ライターは
必死で薦めてくるだろう。メシの種だからな。

この世界、結局金だから。金を稼ぐ奴に乗せられる
おめでたい奴は、いつまでたっても学習能力がない。
ある意味、幸せかもな。
808デフォルトの名無しさん:2007/02/12(月) 08:07:37
EJB2.XとEJB3は全くの別物だぞ
理念的には、EntityBeanはHibernateのEntityに置き換えられ、
SessionBeanはSpringの考えを真似た
Hibernate側は積極的に協力したが、Springが非協力的だったので、
DI機能が貧弱になってしまったがな
809デフォルトの名無しさん:2007/02/12(月) 11:06:17
おかげでHibernateの使いにくさがそのまま(むしろもっと)残ってしまった。
810デフォルトの名無しさん:2007/02/12(月) 12:40:55
使い物にならなかったEntityBeanよりはマシだろ
811デフォルトの名無しさん:2007/02/12(月) 12:50:44
>>808
Seasarが協力してればかわってましたか?
812デフォルトの名無しさん:2007/02/12(月) 17:24:03
もちろん、スーパーアジャイルです
813デフォルトの名無しさん:2007/02/12(月) 21:25:40
>>808
まったく別物ってもうさんざん聞いた。
要は Hibernate や Spring の劣化コピーだろ。
理念はそうであっても、儲けなければならない各企業の
思惑が仕様にからんできて結局通った道を歩むだろう。

標準仕様であるためにガチガチにしなければならないジレンマ。
別に Hibernate や Spring マンセーではないが Hibernate や Spring は
EJB3 は置き去りにしてどんどん前に進むだろう。
標準仕様は意思決定遅すぎ。

だいたい JPA なんだよ、あれ。EJB2 で SQL チューニングできねーって
さんざん叩かれたのにまだ分かってねーのか。バカだな。
まーこれは HQL がメインだった Hibernate でも同じだが、
標準仕様となれば話は別だ。っつーか Java の ORM ってなぜ
こんなのばっかなんだよ。
814デフォルトの名無しさん:2007/02/12(月) 21:27:05
っつか、スレ違いじゃねーか。
815デフォルトの名無しさん:2007/02/12(月) 21:28:43
>>813
ネイティブなSQL発行できるからましじゃねーの?
816デフォルトの名無しさん:2007/02/13(火) 10:35:31
>>804
class Hoge{
 Fuga fuga
}

を XML にバインドするのに

<hoge>
 <fuga>fugagaga</fuga>
</hoge>

<hoge fuga="fugagaga"/>

の2種類がありえるから、スキーマ(WXSじゃなくてもいいが)ないと
本質的に等価な変換は無理だと思ってたんだけど
その辺りってどうやってやってるの?
817デフォルトの名無しさん:2007/02/13(火) 16:49:12
>>816
何もしなければ上のほうとなる

@XmlAttribute
String fuga;
とやると下のほうになる

意識して上のコードにしたければ
@XmlElement
をいれるとよい
818デフォルトの名無しさん:2007/02/14(水) 11:01:20
アノテーションかあ。
スキーマしこしこ書くよりは早いすね。
819デフォルトの名無しさん:2007/02/14(水) 13:43:01
betwixtってgetterメソッドないフィールドの書き出しってできなかったっけ?
820デフォルトの名無しさん:2007/02/15(木) 14:36:56
HttpClientのJavaDocってホームページ上にないの?
821デフォルトの名無しさん:2007/02/15(木) 14:50:16
>>820
ググったら見つかった。
ttp://jakarta.apache.org/commons/httpclient/apidocs/index.html
トップページからリンクされてないようなのが謎。
822デフォルトの名無しさん:2007/02/16(金) 10:53:29
>>821
お〜ありがとうございます。
823デフォルトの名無しさん:2007/02/16(金) 10:57:30
HttpClientを使ってバッチ処理的なものを作ろうとしていて。
Linuxとかで、あるサーバーにログインしてダウンロードページに遷移後にダウンロード。
こんな処理をしたくて。SSOの認証用データをダウンロードするためのバッチ処理なんですが。
wgetではクッキーを保持して決まった画面の順に経由してダウンロードができないので
HttpClientでやろうかと。
もっと簡単な方法ありますかね?
824デフォルトの名無しさん:2007/02/16(金) 18:00:02
ダウソなら、
Commons FTP, Commons VFSを使うという手もあるぞ。
825デフォルトの名無しさん:2007/02/18(日) 15:10:42
log4j PatternLayout の出力結果パーサーってある?
pattern を元にインスタンス生成して、出力結果の渡すとメモリ展開してくれるようなやつ。
826デフォルトの名無しさん:2007/02/24(土) 11:37:10
Commonsじゃなくてもいいのですが、Javaでパスワード付きZIPの作成・展開ができるフリーのライブラリってありますか?
どなたかご存知でしたらご教示下さい。
827デフォルトの名無しさん:2007/02/24(土) 19:01:05
おれはコマンド投げたなたしか。探せばあるんじゃないの?
828デフォルトの名無しさん:2007/02/24(土) 20:08:41
>>825
意味が解らないんだけどさ。
XMLで出力できるクラスやメソッドなかったっけ?

Java Logging APIにはあるんだけどさ。Log4jにも
あったような気がするね。

それを使ってXMLパーサでどうにかすればいいんでは。
829デフォルトの名無しさん:2007/02/24(土) 20:31:07
>>828
>>825がやりたいのはそういうことじゃないと推測してみた。

XMLじゃなくて、あくまでPattern Layoutの出力結果をパースしたいんじゃないの?
log4j.xmlに設定したパターンから解析してパースしてくれるものが欲しいんじゃないかと。

結論としては、そんなのはPattern Layoutの使い方を間違っていて
>>828のようにするのがスジだと思うんだけどさ。

どうしても欲しかったら自作するしかないと思う。
面倒だけど、これぐらいならやってやれないことはない。
830デフォルトの名無しさん:2007/02/25(日) 01:30:36
>>826
時間賭けてググッタが
見つからなかったよ。

自作するのはどうだい?

パスワード付きZIPアーカイバの
ソースコードや仕様を解析してさ。
831825:2007/02/25(日) 03:02:34
>>828
>>829
説明不足スマン。

別のシステムの出力結果を読み込んで解析しろってゆう要件。
JDBCAppender や XMLLayout を使ってくれれば、それに越したことは無いんだが。。
パフォーマンスの都合で使いたくねぇって言われて。
832825:2007/02/25(日) 03:17:13
追記。
ググっても無さげだったから、正規表現でやっつけた。
確かにこんなモン需要無いよね。。
833デフォルトの名無しさん:2007/02/25(日) 12:18:47
>>830
やっぱりそうですか・・・。
自分でも結構探したんですがだめでした。

さすがに自作するほどのスキルはないんで、さくっとあきらめます。
834デフォルトの名無しさん:2007/02/25(日) 12:57:34
圧縮のアルゴリズムがわかり、
かつ、圧縮されたパスワード付き書庫バイナリファイル
を解析すれば、
どうやってつくればいいかわかるかもしれんよ?
835デフォルトの名無しさん:2007/02/25(日) 12:58:37
>>831
パフォーマンスの都合って
どういうスペックなんだか、
ログファイルを一旦別のサーバの
コピーしてから解析なり
フォーマット変換なりすればいいだけじゃないかと
思うんだが。
836デフォルトの名無しさん:2007/02/25(日) 15:16:24
>>835
ログ出力時のパフォーマンスのことじゃね?

・・・XMLLayoutもPatternLayoutもそんなに変わらないようにおもうけど・・・
837825:2007/02/25(日) 15:25:51
>>836
そう。出力時の事。
解析はFTPで取りに行ってバッチ処理する。

ネットワークとか使うAppenderが遅いってのは分かるけど
ファイル出力のレイアウトは大差ないよね。多分めどくさいだけ。
838デフォルトの名無しさん:2007/02/26(月) 23:12:58
>>834
パスワード付きZIPライブラリ公開に一番重要なのは
PKWareの法的措置を恐れない向こう気の強さじゃないでしょうか。
Zip2.0互換暗号(traditional PKWARE encryption)/AES128/AES256に
対応したライブラリは欲しいですが火中の栗を拾う人はそういないですよね。

●規格とソースファイル
Windows XP の圧縮フォルダ (.zip) で使用されている「暗号化」の方式はなんですか?
http://q.hatena.ne.jp/1157379777
Application Note on the .ZIP file format (ZIPファイル仕様)
http://www.pkware.com/documents/casestudies/APPNOTE.TXT
AES Encryption Information (AES暗号化ZIPファイル仕様)
http://www.winzip.com/aes_info.htm
AESの暗号化/複号化を行えるCのコード
http://fp.gladman.plus.com/AES/index.htm
truezip(特許問題を嫌って独自暗号採用)
https://truezip.dev.java.net/
>Forget WinZIP's contended encryption, abstain from PKZIP's patent bombed encryption!

●暗号化方式をめぐる対立
「WinZip 9.0β」が公開〜ZIPファイルのAES暗号化機能をサポート
http://internet.watch.impress.co.jp/www/article/2003/0513/winzip.htm
Zipをめぐる争いに終止符--メーカー2社が手打ち
http://japan.cnet.com/news/ent/story/0,2000056022,20063885,00.htm
839デフォルトの名無しさん:2007/02/26(月) 23:28:49
>>838
パスワード付きzipで、新しい方の暗号化を指してる事ってどんぐらいあるんだろか?

WinZip方式の方はオープンじゃなかったっけ?
840デフォルトの名無しさん:2007/03/03(土) 02:18:12
ToStringBuilder.reflectionToStringの逆変換(Object化)って無いの?
841デフォルトの名無しさん:2007/03/03(土) 02:28:28
無理いうな
842デフォルトの名無しさん:2007/03/03(土) 08:05:43
>>840
何を考えているのか。
可逆だぞ

ハッシュみたいなもんだし
843デフォルトの名無しさん:2007/03/03(土) 13:32:08
可逆ならできるだろw
844デフォルトの名無しさん:2007/03/03(土) 14:52:02
>>840
しりあらいず
845デフォルトの名無しさん:2007/03/04(日) 00:30:25
>>842
やり方教えて。
846デフォルトの名無しさん:2007/03/04(日) 13:10:13
不可逆の間違いだな
847デフォルトの名無しさん:2007/03/04(日) 13:10:25
>>844が答えを出した
848デフォルトの名無しさん:2007/04/03(火) 16:16:58
commonsでなくてもよいのですが、jpegやgifファイルを編集(横に伸ばすする程度)するライブラリありますか?
849デフォルトの名無しさん:2007/04/03(火) 16:20:36
それって普通に自前でかけよと思うのだが
Javaのコードで5行程度じゃね?
850デフォルトの名無しさん:2007/04/03(火) 16:30:52
>>849
標準のクラスでいけますか?
それ教えていただけることはできないでしょうか?
851デフォルトの名無しさん:2007/04/03(火) 16:34:19
java.awt.Image#getScaledInstance(width, height, hints)
852デフォルトの名無しさん:2007/04/04(水) 09:47:18
>>851
ありがとうございます。

ちなみに、WEBでいろいろなグラフを出したいと思っているのですが、
JFreeChartやJChartなどがあるらしいですが、
何が一番よいでしょうか?
Commonsから離れてしまってすいません。
853デフォルトの名無しさん:2007/04/04(水) 11:25:53
>>852
そう思うなら他所で聞け
854デフォルトの名無しさん:2007/04/04(水) 21:31:45
>>852
JFreeChartの方が情報多そう。
855デフォルトの名無しさん:2007/04/05(木) 14:24:23
xmlをフォーマットするクラス知ってますか?
XMLConfiguration.save()はだめでした。
856デフォルトの名無しさん:2007/04/05(木) 15:02:47
857デフォルトの名無しさん:2007/04/08(日) 19:32:34
Sunの標準ライブラリでもバグや不具合が結構あるのに、
さらに、こんなライブラリ使ってる奴の気がしれない…。
858デフォルトの名無しさん:2007/04/08(日) 19:35:29
まあ大元はIBMの研究所や製品開発部隊の半製品だったりしたわけだがw
机上の空論大好きな豆腐頭には、理解が難しい現象かもなw
859デフォルトの名無しさん:2007/04/08(日) 19:55:38
だからなに?
IBMとかメジャーな名前みると盲目的に信用しちゃう人?
勧誘とか気をつけろよ。
860デフォルトの名無しさん:2007/04/08(日) 20:05:00
似非コンサルよりはよっぽど信用するけどな。
一緒に仕事した仲だし。
861デフォルトの名無しさん:2007/04/08(日) 20:14:19
似非コンサルなんて付き合ったことねーからワカンネ。
恵まれてないね。
じゃぁ障害出たときも安心だね。IBMに気軽に文句言えるね。
862デフォルトの名無しさん:2007/04/08(日) 20:17:41
なんじゃそりゃ?Apache JakartaとIBMは今じゃもう関係ないだろ。
個別にメンテナーと相談して、自分で治しながら使っときゃえーんじゃないの?
オープンソースって
863デフォルトの名無しさん:2007/04/08(日) 20:19:47
>>860
確かに似非コンサルと一緒に仕事すると,
信用とかどっかに吹っ飛ぶよな(笑)
864デフォルトの名無しさん:2007/04/08(日) 20:26:23
関係ナッシング。
スルーして被害を最小限度に留めるだけ。

でも、ちょっとだけ、
人間という素晴らしい存在への信頼感が揺らぐ。
それが悲しい
865デフォルトの名無しさん:2007/04/08(日) 20:30:51
>>862
なんかのんびりしてるな。
オープンソースでシステム構築してるのが判る気がする。
866デフォルトの名無しさん:2007/04/08(日) 20:34:18
ひたすら会議と政治に明け暮れる大規模開発は、
争い事の好きなバカがはびこりがちだから、
本当に開発が好きな奴は避ける。

全体をコントロールしやすい範囲で
効率的に仕事を進めるのがベターな生き方。

あなたは自分の生き方を自分でコントロールできない状況に我慢するのですか?
867デフォルトの名無しさん:2007/04/08(日) 20:36:10
大規模開発向けミドルウェア開発ならまだ面白みがあるけれど。
大規模開発って要するにプロジェクト予算に人足手当てを入れ込むためのダミーでしょ。
そんな仕事にまともな人間が興味を示すわけがない。
868デフォルトの名無しさん:2007/04/08(日) 20:40:51
>>866
開発規模と業務でオープンソースを使う、使わないは
関係ないことに気づけ。
あなた開発者というよりマネージャーに近い立場じゃない?
869デフォルトの名無しさん:2007/04/08(日) 20:44:24
コントロール効かなくなる類の人生には一切興味がない。
だからキミが話を大規模開発に敷衍しようがしまいが、
一切興味がない。
870デフォルトの名無しさん:2007/04/08(日) 20:45:13
お前らすこしスレタイを眺めてみようか
871デフォルトの名無しさん:2007/04/08(日) 20:46:08
で?
872デフォルトの名無しさん:2007/04/08(日) 20:47:56
>>870
すまん。あまりに暇だったモンで…。
873デフォルトの名無しさん:2007/04/08(日) 20:50:36
要するに、プロジェクトサイズにせよ、ライブラリソースにせよ、
自分でコントロールできる範囲でやるのが一つの良い生き方って話。
874デフォルトの名無しさん:2007/04/08(日) 22:38:31
人の作ったものが信用できない奴は、
そもそもJavaなんて使うほうが間違ってるよ。
アセンフラで書くなり、
マシン語で直接書くなりしたほうがいいんじゃね?
875デフォルトの名無しさん:2007/04/08(日) 22:41:04
人が作ったMPUなんか...って話になるからやめれ。
876デフォルトの名無しさん:2007/04/08(日) 22:41:58
他人の作ったハードが信用できないのでハードも自作するハメになります。
877デフォルトの名無しさん:2007/04/09(月) 00:00:34
結局「保証」「責任」というところに落ち着く。
878デフォルトの名無しさん:2007/04/09(月) 00:03:33
「保証」「責任」など幻想
879デフォルトの名無しさん:2007/04/09(月) 00:03:58
話がどっちとも取れる転び方をしているのが笑えた。

何が信用できるって言ってるんだこいつは?
保証/責任とか言ってるから、どうせ(ry
880デフォルトの名無しさん:2007/04/09(月) 00:04:55
頭の悪い奴の議論は、常にポイントが的外れ
881デフォルトの名無しさん:2007/04/09(月) 00:09:32
>>879
何を言いたいのかわからないな。
具体的に頼むよ。
882デフォルトの名無しさん:2007/04/09(月) 00:11:21
子供はもう寝る時間だぞ
883デフォルトの名無しさん:2007/04/09(月) 00:20:56
ベンダーが保証しているプロダクトを選んだ奴に仕事を任せた奴を管理した奴を採用した奴に人事を任せた奴を採用した奴を産んだ奴との結婚を認めた親を育てた奴の責任?
884デフォルトの名無しさん:2007/04/09(月) 00:21:43
この手の会話で主語をしっかり書かないのは
自信のなさの現れだろう
885デフォルトの名無しさん:2007/04/09(月) 00:31:53
スレ違いもわからない奴らのバカ決定戦は他所でやれよ
886デフォルトの名無しさん:2007/04/09(月) 00:34:14
バカに直接言え
887デフォルトの名無しさん:2007/04/09(月) 07:12:22
オープンソースコミュニティのなんの貢献もせず、
ソースすらまともに読んだこともないのに、
「オープンソース最高!」と根拠のない奇声を発してるのが
現在の日本のオープンソースユーザーの現状。

だから キ モ イ っていわれんだよw
888デフォルトの名無しさん:2007/04/09(月) 07:13:54
ほらバカが来たぞ
889デフォルトの名無しさん:2007/04/09(月) 07:24:05
しかし2chって面白いね。
朝から相手してくれる人いるし。
ちょっとした燃料でもすぐ反応してくれるし。

つかオープンソースなんてどうでもいいんだよね。
なんで金とらねーんだろう?もったいね・・・としか思わん。
890デフォルトの名無しさん:2007/04/09(月) 07:26:09
朝から暴れてるのはお前一人
891デフォルトの名無しさん:2007/04/09(月) 07:26:42
似非コンサルって暇なんだな
892デフォルトの名無しさん:2007/04/09(月) 07:29:34
池沼が落書きに過ぎんものを「燃料」と呼ぶあたりに、
どうしようもない底辺生活者の乾きを感じた。
893デフォルトの名無しさん:2007/04/09(月) 07:31:44
そんな俺に付き合ってるのはおまいら二人。
お互い暇だな。
しっかしなんで金とらねーんだろう・・・って不思議
だねぇ。apacheなんて金とりゃいいのに。
894デフォルトの名無しさん:2007/04/09(月) 11:16:58
>>856
おおおお、すばらしい。標準ライブラリでこんな便利なものがあったのですね。
javaはクラスが多すぎて、利用価値があるクラスを見つけるのが厳しいなぁ。
ありがとうございます。
895デフォルトの名無しさん:2007/04/09(月) 11:36:26
宗教論争でスレが伸びるとうんざりするが、
894みたいな発言があると嬉しい。(856は俺。)

> 利用価値があるクラスを見つけるのが厳しい
わりとカオスですよね。
だからこのスレとかは重宝するんだけど。
896デフォルトの名無しさん:2007/04/09(月) 12:01:17
あちこちで宗教論争吹っかけてるバカといえば、コイツですね
http://pc11.2ch.net/test/read.cgi/tech/1176033534/
897デフォルトの名無しさん:2007/04/11(水) 01:39:00
>>887
ASIP乙
898デフォルトの名無しさん:2007/04/11(水) 20:34:56
ASIPってなに?
ググってもそれらしきものが出てこない…。
おせーてエロい人!(コレが言いたかっただけ
899デフォルトの名無しさん:2007/04/12(木) 15:03:52
900デフォルトの名無しさん:2007/04/12(木) 15:30:50
poiはword、excelだけでpdfはないのですか
901デフォルトの名無しさん:2007/04/12(木) 19:18:14
>>900
OpenOfficeのAPIつかえ。
書き出しはできたはず。
詳しくはググれ。
902デフォルトの名無しさん:2007/04/13(金) 10:02:19
>>901
サンクスです
903デフォルトの名無しさん:2007/04/13(金) 22:54:18
PDFならiTextがお手軽じゃない?
904デフォルトの名無しさん:2007/04/17(火) 10:38:53
iTextで1からガリガリ書くのはお手軽な気がしないような。
905デフォルトの名無しさん:2007/04/17(火) 11:02:32
印刷APIとおなじようなもんだろ
その他のはライブラリに振り回される可能性がある
906デフォルトの名無しさん:2007/04/17(火) 21:08:49
OpenOfficeのAPI使った場合
Writer or Calcドキュメント作成からPDF出力まで
全部JavaAPIでできるんですか?PDF出力しか
やったことねーんだけども。
907デフォルトの名無しさん:2007/04/18(水) 01:55:41
JasperReportはどうよ
908デフォルトの名無しさん:2007/04/18(水) 02:15:15
>>907
NetBeans6がでないとダメ
出れば普及してスタンダードになるかと
https://jarvis.dev.java.net/resources/jarvis.PNG
909デフォルトの名無しさん:2007/04/18(水) 02:53:02
iReportでいいんじゃね?
http://jasperforge.org/sf/projects/ireport
910デフォルトの名無しさん:2007/04/22(日) 16:08:45
Java Logging APIはLog4Jより、17%ほど手元のベンチで遅延が出たが
設計そのものはこっちのほうが綺麗な気がする。

こっちのハンドラやロガーのライブラリって無いのかな
911デフォルトの名無しさん:2007/04/22(日) 16:51:04
>>910
みんな普通に自作してると思う
912デフォルトの名無しさん:2007/04/24(火) 10:35:58
>>866
大規模開発に対する偏見が交じっている
913デフォルトの名無しさん:2007/04/24(火) 10:36:24
Collectionsいい加減にでないかな
914デフォルトの名無しさん:2007/04/24(火) 10:36:42
Generics対応版のCollectionがさ

早く出て欲しい
915デフォルトの名無しさん:2007/04/24(火) 22:37:47
>>912
自分の世界が全ての人間なんでしょう。きっと。
916デフォルトの名無しさん:2007/04/29(日) 23:33:58
なんだこのもりあがらねークソスレ。
まるで日本でのオープンソース事情を見ているようだ。ぷw
917デフォルトの名無しさん:2007/05/04(金) 14:35:09
commonsIOのFileFilterを使って階層無視して検索みたいなことってできないのでしょうか。
918デフォルトの名無しさん:2007/05/08(火) 19:47:23
>>916
すべてお前のせいだw
919デフォルトの名無しさん:2007/05/08(火) 23:56:46
>>917
Commons Finderとか?
920デフォルトの名無しさん:2007/05/14(月) 10:32:39
ReflectionToStringBuilderってネストしたクラスの再帰的toString()出力はできないのでしょうか?
921デフォルトの名無しさん:2007/05/14(月) 23:23:42
ネストされる側にも入れておけば、きっちり出力されるよ
922デフォルトの名無しさん:2007/05/15(火) 09:54:02
>>921
2.3のリリースノートにスタックオーバー修正って書いてあったから再起できるのかなと・・・
jdoc見たけど再起処理はなさそうだね。
923デフォルトの名無しさん:2007/05/16(水) 01:26:29
簡単に書けそうだけどな。
Commons にあればっていう話か。
924デフォルトの名無しさん:2007/05/16(水) 10:47:28
>>923
実はtoString()はオーバーライドするなといわれています。出力したいのが客先のbeanで
そのtoString()が使えないんで。やっているのがtoString()のオーバーライドでなく
ReflectionToStringBuilder.toString(bean);なんですよ。
だから再起が出来れば楽かなと。本当はオーバーライドしたいんですけどね。
925デフォルトの名無しさん:2007/05/19(土) 16:25:47
>>924
Aspectで無理矢理……って訳にはいかないよね。
自分でReflectionToStringBuilderもどき書くしかないだろう。
以前ReflectionToStringBuilderの存在を知らなくて自前で書いたことがあるけど、コメントをそこそこ付けても100〜200行で収まった気がする。
926デフォルトの名無しさん:2007/05/20(日) 16:36:55
>>925
どんな高機能なコード書いてんだ?
俺は commons が使えないプロジェクトでは自分で書いたが
10行ぐらいだったけど。再帰しても15行ぐらいか。

>>926
toString オーバーライドせんでも
普通に再帰的にオブジェクト階層の中に入って
setAccessible(true) で見るだけでいいんじゃね?
927デフォルトの名無しさん:2007/05/20(日) 23:45:05
>>926
925じゃないけど、循環参照な構造のオブジェクトに対応させようとすると、
結構行数が必要だった気がする。

配列とCollection, Mapあたりを再帰的に処理するコードも結構行数が必要になったな…
928デフォルトの名無しさん:2007/05/21(月) 00:02:13
ReflectionToStringBuilderコピって改造すりゃエーヤン
929デフォルトの名無しさん:2007/05/21(月) 14:58:16
commons-lang の使用を許可してくれるよう、
上とかけあった方が有意義じゃないか?
930デフォルトの名無しさん:2007/05/23(水) 17:34:57
>>799
> getterがないフィールドも出力可能
ってどーやるんですか?
931デフォルトの名無しさん:2007/05/23(水) 18:36:23
Betwixtを使いたいんだけど、XMLに書き出すと空文字(Stringの"")が反映されない。
なんか設定あるのかな?
助けて
932デフォルトの名無しさん:2007/05/24(木) 03:11:08
あげ
933デフォルトの名無しさん:2007/05/28(月) 21:12:55
>>931
<elem></elem>

<elem />
になるってこと?それはしょうがないと思うけど。
ほとんどのパーサーつかってもちゃんと空文字としてよめるし、
出力しても省略タグになるよ。
934デフォルトの名無しさん:2007/05/28(月) 23:01:28
似たような話題が出てきたので聞きたいのですが、
HTMLのtextareaみたいに、<textarea />って記法を認めず
必ず <textarea></textarea> にしなきゃいけないようなものを扱うのに
適したライブラリってあります?
935デフォルトの名無しさん:2007/05/29(火) 01:15:45
ライブラリはないんじゃね? 普通に考えて。
936デフォルトの名無しさん:2007/05/29(火) 01:57:57
JSON
937デフォルトの名無しさん:2007/05/29(火) 04:39:28
>>934
nekohtml
938931:2007/05/29(火) 15:08:44
>>933
ごめんなさいpropertyです。
<status code="" />

<status />
になる。
空文字だとダメだ。DTDで必須なんです。
939デフォルトの名無しさん:2007/05/29(火) 22:27:34
http://discypus.jp/wiki/?Java%2FJakarta%20Commons%2FBetwixt
これと似たような感じか?
属性まで省略されるのはこまるなぁ。多分設定とかじゃ無理だと思う。
自分で省略してる部分のソース書き換えるとかしないと無理なんじゃないかね。
そもそもxmlで値に空文字が来るのがあかんきがする。
コード値とかはちゃんと0から使うとかしたほうがいいんじゃない?
政治的な事情で無理そうな気がするけど。
940デフォルトの名無しさん:2007/06/01(金) 15:31:25
一緒かも、空の属性をオブジェクトにするとnullになる。
諦めます。
レスくれた人ありがとうございました。
941デフォルトの名無しさん:2007/06/11(月) 13:17:19
ここでいいのかわからないけど。
Log#error(Object, Throwable)の引数のObjectって何わたしてる?
942デフォルトの名無しさん:2007/06/11(月) 20:12:19
thisだお
943デフォルトの名無しさん:2007/06/12(火) 00:55:13
>>941
通常はエラーメッセージだよ
好きなオブジェクト送って、自前でlayout実装することもできる。
944sage:2007/06/12(火) 10:53:05
>>943
エラーが発生しました。
とか?
945デフォルトの名無しさん:2007/06/21(木) 18:21:01
emailってIMAP対応していないんだね・・・
946デフォルトの名無しさん:2007/06/22(金) 10:14:39
>>945
ていうか、それは送信のみ対応なのか?
947デフォルトの名無しさん:2007/06/27(水) 16:10:54
フリーなバーコード作成ライブラリって知ってますか?
commons以外でも知っている人いたら情報お願いします。
今のところ製品しか見つからなくて・・・・
948デフォルトの名無しさん:2007/06/27(水) 16:35:47
POIでExcelかAccessにやらせる
949デフォルトの名無しさん:2007/06/27(水) 16:55:56
>>948
そもそもエクセルでバーコード作成機能なんてあるのでしょうか?
950デフォルトの名無しさん:2007/06/27(水) 17:15:46
Excel も Access も製品なんですが
951デフォルトの名無しさん:2007/06/27(水) 17:20:10
>>947
携帯のJavaにはバーコード作成ライブラリ付いてるよね
952デフォルトの名無しさん:2007/06/27(水) 17:24:57
検索したけどフリーのいっぱいあるじゃん
http://www.scansecretary.com/jp/freebarcode.htm
953デフォルトの名無しさん:2007/06/27(水) 21:34:01
commons にバーコード作成ライブラリがあったのか。知らなかった ><
954デフォルトの名無しさん:2007/06/28(木) 10:42:56
>>951
j2seとj2eeにはなくj2meとかってやつですか?
955デフォルトの名無しさん:2007/06/28(木) 11:30:34
excelやhtmlのファイルをpdfに変換するにはOpenOfficeのJOOConverter が手っ取り早いでしょうか。
POI→JOOConverter で帳票を作ろうかと思っています。
956デフォルトの名無しさん:2007/06/29(金) 19:35:58
QRコードのエンコードライブラリでちゃんとしたのってありますか?
957デフォルトの名無しさん:2007/06/30(土) 15:14:55
commonsにあったのか・・・
逆に>>956にききたい
ちゃんとしてないのはどこにあるの?
958デフォルトの名無しさん:2007/06/30(土) 21:36:55
959デフォルトの名無しさん:2007/06/30(土) 22:02:08
それcommonsじゃないからちゃんとしててもちゃんとしてなくてもここではかたらんよ

もしかして質問者、ここのスレ単なるJavaのスレかなんかと勘違いしてるとか
960デフォルトの名無しさん:2007/07/01(日) 10:23:50
>>956-958
ちゃんとしてるよ
961デフォルトの名無しさん:2007/07/02(月) 22:56:45
CSVを読んだりINIファイルを読んだりするライブラリはありますか?
リストやマップを色々と操作するライブラリはありますか?
962デフォルトの名無しさん:2007/07/02(月) 22:59:09
commons csvってのがsand boxにあったような
963デフォルトの名無しさん:2007/07/03(火) 09:24:22
>>962
見てみました。
ファイル多すぎw Jakartaの暗黒面を見た気分ですw
964デフォルトの名無しさん:2007/07/04(水) 01:47:07
commonsのsmtp関連って使っているひといますか?
使おうと思ったけどエンコード思うようにいかなくて
javax.mailの方に手を出したら結局そっちだけで用が済んでしまい
わざわざcommons使うまでもなかったっていうか・・・
965デフォルトの名無しさん:2007/07/04(水) 08:46:57
というかいじらないとダメで結局commonsのはつかえない
日本語使わないのなら問題はなかったような
966デフォルトの名無しさん:2007/07/04(水) 13:25:42
mime とか attachement とか multipart とかはやってくれるんだけどそれだけ
967デフォルトの名無しさん:2007/07/15(日) 19:16:58
これはC++で言うとboostみたいなもん?
968デフォルトの名無しさん:2007/07/15(日) 19:41:59
Commonsは小規模でどこのプロジェクトでも同じコードをかきそうなライブラリを公開して書かないようにしようというもの
boost相当は標準APIでほとんどまかなえるため感覚はかなり違うかと
969デフォルトの名無しさん:2007/07/15(日) 19:55:35
>>968
Cにもそれがあればよかったのに
970デフォルトの名無しさん:2007/07/16(月) 00:20:09
PerlのCPANみたいなもん、の方が近いかな
Cは実行環境での動きの差を吸収するのがめんどいから、そういうのなかったんだろうね。
971デフォルトの名無しさん:2007/07/30(月) 09:05:36
972デフォルトの名無しさん:2007/07/30(月) 11:37:06
xquery使えるライブラリありますか?
973デフォルトの名無しさん:2007/08/01(水) 22:49:16
>>971
ついにCommonsもTLPか・・・。
というか、Jakartaプロジェクトはどうなるのだろう?消滅?

あと、Javaだけじゃなくて他の言語の共通ライブラリも今後は扱うのだろうか?
974デフォルトの名無しさん:2007/08/01(水) 23:49:10
やっぱりWindowsでもLinuxでもSolarisでも動くってのは大きいね。
ユーザー数が段違いだ>Javaのプロダクト
975デフォルトの名無しさん:2007/08/01(水) 23:51:59
Apache Httpd以外は全部Javaって印象がある。
Xercesとかあるし、勘違いは間違いないんだろうけど。
976デフォルトの名無しさん:2007/08/02(木) 16:42:45
次スレ(に続いて欲しい)は jakarta がスレタイから消えるのか。
もうじき1000って時に良いタイミングで jakarta を飛び出した気がする。
977デフォルトの名無しさん:2007/08/30(木) 13:38:57
velocityスレでレスなかったのでここで聞かせてください。

テンプレートで使用するキー名に、日本語は使えないのでしょうか?

●ソース
 ctx.put("あああ","いいい");

●テンプレート
 ${あああ}


${あああ}がそのまま出ます。これは対応無理ですか?
978デフォルトの名無しさん:2007/08/30(木) 13:47:43
>>977

Apache Velocity - Velocity User Guide
http://velocity.apache.org/engine/devel/user-guide.html

・Variables
 The shorthand notation of a variable consists of a leading "$" character followed by a VTL Identifier. A VTL Identifier must start with an alphabetic character (a .. z or A .. Z).
 The rest of the characters are limited to the following types of characters:

  alphabetic (a .. z, A .. Z)
  numeric (0 .. 9)
  hyphen ("-")
  underscore ("_")

アルファベット、数字、ハイフン、アンダースコア以外は無理じゃないかな。
979デフォルトの名無しさん:2007/08/30(木) 14:31:17
>>978
おおおおおお、なんと・・・
ありがとうございます。
980デフォルトの名無しさん:2007/08/30(木) 17:42:14
Velocity なんでそんなへぼい実装なんだ・・・
981デフォルトの名無しさん:2007/08/30(木) 19:49:39
そのかわり { } 省略できるから楽だよ
982デフォルトの名無しさん:2007/08/30(木) 20:01:24
その程度の省略・・・
983デフォルトの名無しさん:2007/08/30(木) 21:44:31
キー名っていうかVTLの変数扱いだからそれでいいのでは?
日本語で変数名つけてるの?
984デフォルトの名無しさん:2007/08/30(木) 22:27:59
Validate.isTrue(n>0)

と書くつもりが手が滑って

Validate.notNull(n>0)

と書いてしまっていて、オートボクシングでコンパイルが通って
しかも実行時は常に真になっていた。
なんだか、カルチャーショックだった。
985デフォルトの名無しさん:2007/09/01(土) 01:15:39
>>984
お前がどういう文化に属しているかが俺にはよく分からない。
986デフォルトの名無しさん:2007/09/01(土) 04:46:40
>>977
文法忘れたけど、いったんMapに入れて、
${map.あああ}だか何だかでいけたと記憶してる。
987デフォルトの名無しさん
VelocityはJSPのELと違ってそのままメソッド呼べるから
$map.get("あああ") でいけるよ。