【Java】Apache Jakarta Commons
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNGApache 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を兼ねた便利なクラスも用意されており、その数は豊富である。
0002デフォルトの名無しさん
NGNG削除依頼だしとけ。
0003デフォルトの名無しさん
NGNG個人的にはApache/Jakartaスレとかにした方がいいと思うんだけど。
Jakartaスレにすると「Antの質問はここでいい?」とか出るし、途中でJakartaからApacheプロジェクトになるものもあるし、
ここもCommonsに限定するとそれ以外の質問はどこで?ということになる。
どれもたいしてスレの流れが速いわけじゃないから統一していいと思うんだよな。
0004デフォルトの名無しさん
NGNGどうせスレタイにCommonsとか書いてあっても
「Antの質問はここでいい?」ってくるよ
同じことだ
0005デフォルトの名無しさん
NGNG0006デフォルトの名無しさん
NGNGApache Jakarta 共通スレッド。
0007デフォルトの名無しさん
NGNG0008デフォルトの名無しさん
NGNGしかし、1が挙げたものは使い方も単純で、議論の余地もなく、だから何?というものだからなぁ。
DigesterとかValidatorとか、ちょりっとめんどいものならトモカク。
0009デフォルトの名無しさん
NGNG>>1 は空気・ふいんき(←なぜか変換できない)を読めない奴に違いない
0010デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNGCommons Configuration
Commons DBCP
Commons DBUtils
Commons Net
Commons Math
Commons Pool
も使える
0012デフォルトの名無しさん
NGNGCommons Digesterを使って作成するBeanのコンストラクタをpublicにしたくありません。
これは可能ですか?
0013デフォルトの名無しさん
NGNGかなり昔?別板じゃないの?WebProg板とか。
Tomcat4.0のころは、スレが必要なほどだったけど、もうプロジェクト的にも利用者的にも落ち着いたからな。
0014デフォルトの名無しさん
NGNGで、どうやって使うツモリ?
0015デフォルトの名無しさん
NGNGhttp://pc5.2ch.net/test/read.cgi/tech/1094958940/
0016デフォルトの名無しさん
NGNGhttp://www.wikiroom.com/java/?2ch%20Java%B4%D8%CF%A2%A5%B9%A5%EC%A5%C3%A5%C9%B0%EC%CD%F7
0017デフォルトの名無しさん
NGNGDigesterってどういう香具師?
0018デフォルトの名無しさん
NGNGできればgetterメソッドだけpublicにして使わせたいのです。
0019デフォルトの名無しさん
NGNGXMLからJavaのオブジェクトを生成する。
主にXMLで記述した設定ファイルからJavaのオブジェクトに変換するために使う。
DIコンテナの機能限定版だといえなくもない。
0020デフォルトの名無しさん
NGNGで必要になるオブジェクトはどこで生成するつもり?
0021デフォルトの名無しさん
NGNGjakarta TOMCAT 2
http://pc5.2ch.net/test/read.cgi/tech/1075516112/
《The Jakarta Project》
http://pc5.2ch.net/test/read.cgi/tech/1019996589/
0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNGそれをなんとかDigesterでできないかなと、、、、
0024デフォルトの名無しさん
NGNGなんというか、SOAPとか
シリアライズに似ているな
0025デフォルトの名無しさん
NGNG逆。
XMLにシリアライズされているものをオブジェクトに戻す。
タグごとに生成するオブジェクトを決めれる。
0026デフォルトの名無しさん
NGNGコンストラクタじゃなくてファクトリを使わせるつもり?
0027デフォルトの名無しさん
NGNG0028デフォルトの名無しさん
NGNGそれいいですね。staticめ祖度dの呼び出しとか可能ですかねぇ。
0029デフォルトの名無しさん
NGNGお手軽にXMLからオブジェクトにするためのものだからなぁ。
Relaxerとか、ほかのモノ調べてみたら?
0030デフォルトの名無しさん
NGNGつまり、DigesterがあればSOAPとかWSDLがいらなくなるってこと?
0031デフォルトの名無しさん
NGNG外出してたんで返事遅れてスマソ
ありがと、他の手段も検討してみます。
じゃ、このスレはこれで終わりね。
##########################################################
移行先スレ
【Java】Apache Jakarta Commons
http://pc5.2ch.net/test/read.cgi/tech/1094954163/
0032デフォルトの名無しさん
NGNG0033デフォルトの名無しさん
NGNGJavaのオブジェクト生成はコンストラクタかデシリアライズか
クローンのいずれかを経なければならなので普通に考えると無理っぽい。
Digesterって簡単に言ってしまえば、XMLを読み込みつつ、
既成のBeansクラスを生成してsetXXXしていくだけのもんだか
らなあ。
強いて言えば、Digesterからはファクトリ経由で生成するようにして、
ファクトリではそのオブジェクトをシングルトンとして扱う、くらいか
な。
0034デフォルトの名無しさん
NGNGシリアライズされないって。
機種非依存でもないし。
0035デフォルトの名無しさん
NGNG出直してこい
0036デフォルトの名無しさん
NGNG0037デフォルトの名無しさん
NGNGJakartaの最新リリースを自動的にとってくる仕組みらしい。
opt-getみたいなやつかな。
antから使えるみたいだね。
0038デフォルトの名無しさん
NGNG0039デフォルトの名無しさん
NGNGCPANのJava版だよ。
Apache MavenでもAPIの自動ダウンロードに使われている。
0040デフォルトの名無しさん
NGNGCPANのほかに、
FreeBSDのPorts. Linuxのyumみたいなものだろうか。
0041デフォルトの名無しさん
NGNG0042デフォルトの名無しさん
NGNG俺用にcommons.jarっての全部まとめた奴で配布してください。
0043デフォルトの名無しさん
NGNG0044デフォルトの名無しさん
NGNGパターンというかやり方を、別のとこで流用するとか、そんな
話だとおもう
0045デフォルトの名無しさん
NGNGCommons Digester http://muimi.com/j/jakarta/commons/digester/
の例での addChild() のよーなメソッドを入れずに ルールの記述だけで
子要素を追加する方法ってあるだろーか?
0046デフォルトの名無しさん
NGNGなんか質問の意味がいまいちつかめん。
DigesterだとSetNextRuleで親コンポーネントに自分を登録する、
てのは普通のことだと思うが、それをしたくないってこと?
だとすると、具体的にどういうのが理想だといってるんだろ?
0047デフォルトの名無しさん
NGNGMavenで自動ダウンロードしちゃえばそんな
手間も掛けずに済むでえ
0048デフォルトの名無しさん
NGNGやっとDigesterがどんなものかわかったよ。
ようするに、ぶっちゃけ
JAXBみたいなもんだったんだね。
0049デフォルトの名無しさん
NGNGつうか、SAX2をつかってXMLを読み込んで、対応するbeanを
簡単に作成する技術だと思いねえ。
SAX2もDOMも「読むだけ」でbeanは自前で作るんで、その辺を
解決しようと言うものだな。
005045
NGNGgetXXX()/setXXX()メソッドのみ記述していある普通のbeanを素で使いたいの
だが、Digesterの場合はプログラム中で必要なくても 子要素追加には
addXXX() が必要になるじゃんスか。
0051デフォルトの名無しさん
NGNG??????
SetNextRuleというのは、終了タグが来た時に親オブジェクトに対して
「引数の文字列で指定したメソッド」を実行するルールだぞ?
たしかにDigesterのサンプルの大部分は下のような例になっている。
digester.addSetNext( "hoge/hage", "addHage");
でもこれは hoge/hageが見つかった時に親オブジェクトに対して
addHage()メソッドを呼べ、という意味だろ。
じゃあ、上記の第2引数を「setHage」と書き換えたらあんたの希望
の動作になるんじゃないのか?
005250
NGNG言葉足らずですまん。子要素ってのは単一項目じゃなくてList系のやつ。
希望の動作としては
子要素作成、子要素作成、子要素作成、子要素リストを一気に登録。
書き方がわかるやりかたは
子要素作成・追加、 子要素作成・追加、 子要素作成・追加、…
って感じかなぁ。
しかし、strutsとかで使っているDigesterから生成する設定クラスもaddXXX()メソッド
みたいなのばっかだから、これでいいか…。
0053デフォルトの名無しさん
NGNGお前は何を一人でぶつぶつ言ってんだよ。
0054デフォルトの名無しさん
NGNG0055デフォルトの名無しさん
NGNGDigesterの話をしてるんだからXMLとJavaで話せ。
こういうXML文書をこういうクラスにマップする、みたいに。
0056デフォルトの名無しさん
NGNGリフレクション使えばprivateだろうが問題ない。
0057デフォルトの名無しさん
NGNGマジデスカ?
0058デフォルトの名無しさん
NGNGStackを頭に描きながらサンプルを追いかけるべし。
0060デフォルトの名無しさん
NGNG0061デフォルトの名無しさん
NGNG呼び出したらエラーでない?
0062デフォルトの名無しさん
NGNGTest.class.getDeclaredMethod("test", null).invoke(obj, null);
とやってprivateなtestメソッド呼び出したらIllegalAccessException出るんだけど、DigesterからならOKなの?
0063デフォルトの名無しさん
NGNGsetAccessible(boolean)
または
AccessibleObject.setAccessible(AccessibleObject[],boolean)
は実行した?
これしないとフィールド取ってきてもアクセスできない。
0064デフォルトの名無しさん
NGNGえー、そうなん。
知らんかった。
疑ってごめんよ。
0065デフォルトの名無しさん
NGNGここ見ろ。
ttp://muimi.com/j/reflection/
0066デフォルトの名無しさん
NGNG0067デフォルトの名無しさん
NGNG0068デフォルトの名無しさん
NGNG0069デフォルトの名無しさん
NGNGエラーで詰まるけどね
0070デフォルトの名無しさん
NGNGcombo?なにそれ?
0071デフォルトの名無しさん
NGNG使ってみた奴いる?
0072デフォルトの名無しさん
NGNGそれはまあ事実なんだけど、betwixtのXML形式でいいや、というときだけだぞ。
digesterは任意のXMLファイルを読み込んでJavaBeansを生成する技術。betwixtは
JavaBeansを所定の形式のXMLファイルへ変換(または逆)するものだな。
betwixt自体、内部でdigester使ってるし。
0073デフォルトの名無しさん
NGNGdigesterはXML→Javaでしょ。逆はないよ。
0074デフォルトの名無しさん
NGNGhttp://cvs.apache.org/viewcvs.cgi/jakarta-commons/combo/
ここなんだけど、かなり古い情報でこしらえる。これは利用するもんじゃないの?
ちゃんとこしらえてくれるならいいと思うんだけど
0075デフォルトの名無しさん
NGNG表にはでてないよね?
なにするもの?
0076デフォルトの名無しさん
NGNGantタスクで1つずつ落としてビルドしてく原始的なもんです
自分は助かったんですが、ここの住人には無意味かも知れません
0077デフォルトの名無しさん
NGNGbetwixtを使って、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クラスの中に作成しないとダメなんでしょうか?
0078デフォルトの名無しさん
NGNGmavenなら不要、とかそんな話かな。
0079デフォルトの名無しさん
NGNGずばりそうです
0080デフォルトの名無しさん
NGNGhttp://jakarta.terra-intl.com/commons/betwixt/overview.html
public class SomeBean {
public <CollectionType> getFoo*();
public void addFoo(<SingularType> foo);
}
できるっぽい。試して報告汁
0081デフォルトの名無しさん
NGNG情報�dクスです。
Adderメソッドですか・・・。
月曜にでも試して報告します。
ありがとうございました!
008277
NGNGaddメソッド使えばリスト構造もイケます。
ArrayListとかも使えるので結構便利です。ですが、
リスト構造の場合、まだbetwixtファイルとの連携ができてません。
(できてる人いたら教えてください・・・)
<addDefaults/>を使えば、それなりに自分の望んだ形にはなってくれるのですが・・・。
>>77のようなクラスの場合、betwixtファイルを使うときははAbcFormクラス用とXyzクラス用の
betwixtファイルを作成する必要があります。
そんな感じっす
0083デフォルトの名無しさん
NGNGどの部分が引っかかってるのか
もう少し詳しく教えていただけないでしょうか?
0084デフォルトの名無しさん
NGNG<xyzList>
<xyz>
<xyz>
</xyzList>
みたいな構造のXMLが変換可能で<xyzList>タグが必要になる。
これを防ぐには.betwixtファイルが必要(最低6行程度のXML)
.betwixtファイルなしではできなそうだが・・・何か方法あるのか?
0085デフォルトの名無しさん
NGNGそもそもbetwixtファイルなしじゃないといけないことってあるのかな?
0086デフォルトの名無しさん
NGNG見てかなり有用なもんだとは思ったのですが、利用されてますか?
0087デフォルトの名無しさん
NGNGSandboxにあるのはまだテスト中というか、commonsに組み込める品質に達してない、
試行錯誤段階にあるってこと。
0088デフォルトの名無しさん
NGNG0089デフォルトの名無しさん
NGNG自慢じゃないが比較にならない程にごちゃごちゃで汚いコードです。
恐縮です。
0090デフォルトの名無しさん
NGNG0091デフォルトの名無しさん
NGNGGNU関係のは結構ひどい。
0092デフォルトの名無しさん
NGNG変更してコンパイルしようとするとコンパイルが通らない
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/)
0093デフォルトの名無しさん
NGNGローカルリポジトリに手動で入れるしかないんじゃない?
エラーメッセージもっとないとこれ以上はわからん
0094デフォルトの名無しさん
NGNGレスありがとうございます
エラーメッセージはあと
----
Total time: 6 seconds
Finished at: Thu Nov 11 22:57:39 JST 2004
----
だけです…。mavenのリポジトリフォルダってやたらたくさん
フォルダがありますけど、どこに入れたらいいかわかります?
ダウンロードできない理由もよくわからず・・・
0095デフォルトの名無しさん
NGNGXML-RPCのソースの以下の箇所を修正した。
http://blog.livedoor.jp/elis/archives/485398.html
XML-RPCは日本語にデフォルトでは対応させていない
http://backno.mag2.com/reader/BackBody?id=200406281000000000094752000
0096デフォルトの名無しさん
NGNG0097デフォルトの名無しさん
NGNGおーいっぱい情報でますねー。
ちょっとこれ調べてみます。基本的なこともしらずに申し訳ないです・・・。
レスありがとうございました〜。
0098デフォルトの名無しさん
NGNGしに行って404のようですね。
0099デフォルトの名無しさん
NGNGレスありがとうございます。
どうやらそのようです。で、そこで表示されてたローカルリポジトリ(こんなとこだと
思ってませんでした)にダウンロードしてjarを入れてコンパイルしたら
buildは通ったのですが、生成物が見あたりません・・・
maven.xmlで定義されてる${maven.build.dir}ってどこのことなんでしょうか・・・
0100デフォルトの名無しさん
NGNG回答くださった方ありがとうございました
0101デフォルトの名無しさん
NGNGで target/xmlrpc-1.2-b1.jar が出来上がったよ。
■ このスレッドは過去ログ倉庫に格納されています