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


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

【Java】Apache Jakarta Commons



1 名前:デフォルトの名無しさん [04/09/12 10:56:03]
クラスもかなり増えてきた
Apache Jakarta Commons について語るスレッド

Apache Jakarta Commons
jakarta.apache.org/commons/

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

とくにLangには equals(), hashcode(), compareTo(), toString()
メソッドを簡単にオーバライドできるメソッドが用意されており重宝する。
そのほか、NestableExceptionはC#のような言語に頼らなくても
投げられ続けた例外を上書きせずに保持する事ができるので便利。

Collectionsは java.utilのコレクションクラスに不満を持つ者にとっては
朗報だ。ListとHashを兼ねた便利なクラスも用意されており、その数は豊富である。


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

内部ではJavaMailを使ってるらしい。

587 名前:デフォルトの名無しさん mailto:sage [2006/05/09(火) 22:43:54 ]
>>585
すごーくシンプルだから、Webサイト見れば一発で理解できると思う。
JavaMailのうすーいラップのようなもの。
new()して、TOやらCCやらFROMやらSubjectやらをセットして、send()呼べば送れる。
ちょうどJavaBeansのようにsetterでセットする形になってるから、DIコンテナでJavaBeansとして扱えるカモ。


588 名前:デフォルトの名無しさん mailto:sage [2006/05/10(水) 00:11:44 ]
>>587
いいねー。Commons の HTTP 扱うやつより、よっぽど需要がありそうだ。
っつか、そこらじゅうの業務プロジェクトに似たようなのがあったのが
いらなくなるな。

589 名前:デフォルトの名無しさん mailto:sage [2006/05/10(水) 00:51:01 ]
>>588
そうそう。いつもみんな自前で似たような、しかし出来の悪い物を作っていたアレだ。
もう作らなくてよくなる。


590 名前:デフォルトの名無しさん mailto:sage [2006/05/10(水) 01:36:24 ]
Java Mail APIが使いやすくなるのか。
ええなあ。
内部でJava Mailを使っているということは、
Mavenで導入するときは自分でmail.jarとactivation.jarをダウンロードして
mvn installでローカルリポジトリに追加しないといけないのか。

591 名前:デフォルトの名無しさん mailto:sage [2006/05/10(水) 01:55:52 ]
>>590
そうだね。バイナリ版をダウンロードしても、libフォルダ内にテキストファイルが
入っていて、「mail.jarとactivation.jarを別途ダウンロードしてね」と書いてあった。

592 名前:デフォルトの名無しさん mailto:sage [2006/05/10(水) 10:02:30 ]
探せばまだまだある。
commons-transactionだって使えるぞ。
ファイルの追加、削除、リネームをして、
ヤベ、戻したいっと思ったときにロールバックをかけるときれいさっぱりに

593 名前:デフォルトの名無しさん mailto:sage [2006/05/10(水) 12:31:42 ]
>>592
DB がからむと使い方が難しそうだ。
2 フェーズコミット問題。JTA みたいなのを自作っつーのもあれだ。
厳密でなければ、良さげ。

594 名前:デフォルトの名無しさん mailto:sage [2006/05/10(水) 12:59:40 ]
>ヤベ、戻したいっと思ったときにロールバックをかけるときれいさっぱりに

きれいさっぱりに消えてしまうんですか!?
(((;゚Д゚)))ガクガクブルブル




595 名前:デフォルトの名無しさん mailto:sage [2006/05/10(水) 13:49:38 ]
>>594
ちゃんと言うと、DBのトランザクションと同じで
コミットしないと、対象ディレクトリに作成・削除が実行されないって事。
つまり、コミットまではワークスペースに対して実行されている。

596 名前:デフォルトの名無しさん mailto:sage [2006/05/11(木) 00:00:06 ]
mail試そうと思ったらサーバ落ちてる・・・

597 名前:デフォルトの名無しさん mailto:sage [2006/05/11(木) 11:01:21 ]
XMLを読み込むフレームワークで、DigesterとかBetwixtとか見てるんだけど、
XMLの内容を格納するbeanを明示的に書かなくてもいいものって無いかな?

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

までやってくれて、利用者側は、あくまでXMLをAPIに読み込ませて、
結果として返されるDynaBeanとかを利用するだけ、みたいな。


598 名前:デフォルトの名無しさん mailto:sage [2006/05/11(木) 12:14:31 ]
commons ではないけど xmlbeans や relaxer でどう?
DynaBean 的なものではないけど、
人間がやるのはスキーマを書くところだけ。
マッピングクラスの定義は自動生成する。

599 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2006/05/11(木) 14:05:44 ]
俺はスキーマ書くだけで
・コンパイラによるチェック
・入力補完
で手が抜ける方が素敵に感じる。

まぁ人それぞれっすね。

601 名前:デフォルトの名無しさん mailto:sage [2006/05/11(木) 14:25:50 ]
>>599
Betwixtですむよ。定義いらない(Betwixt自身で吐き出したxmlならね)。

602 名前:599 mailto:sage [2006/05/11(木) 17:35:13 ]
いろんな考え方があるねぇ。。。
自分に合ったものを選べばいいってことなんだろうけど。

早速、XerialJ/XMLBeanを試してみたけど、
格納するBeanさえ作ってしまえば楽ちんだわ、これ。
日本語もOK。

603 名前:デフォルトの名無しさん mailto:sage [2006/05/11(木) 17:49:31 ]
>>602
配列じゃなくリストは対応できるのかぁ・・・

604 名前:デフォルトの名無しさん mailto:sage [2006/05/12(金) 09:29:16 ]
>>603
格納先Beanに、配列の代わりにListを使うとダメみたい。



605 名前:デフォルトの名無しさん mailto:sage [2006/05/12(金) 09:44:51 ]
>>604
Betwixtならできるぞよ

606 名前:デフォルトの名無しさん mailto:sage [2006/05/12(金) 11:07:04 ]
>>605
まぢっすか。
Betwixtの勉強によさげなサイトとか紹介してもらえませんか。

607 名前:デフォルトの名無しさん mailto:sage [2006/05/12(金) 13:48:02 ]
XerialJ、配列ってのを気にしなければ、
けっこーネストしたxmlでもbeanさえ作っておけば
処理してくれるね。

608 名前:デフォルトの名無しさん mailto:sage [2006/05/12(金) 20:48:32 ]
>>604
Beanにset/getの2つのメソッド以外に、addを用意するのがミソ。

609 名前:デフォルトの名無しさん mailto:sage [2006/05/12(金) 22:15:15 ]
>>608
Betwixtもそうだよ。
まぁ、みんな同じだね・・・

610 名前:デフォルトの名無しさん mailto:sage [2006/05/13(土) 01:03:49 ]
まぁ、いろんな技術要素を知っておいたほうが、
選択肢や対応力は広がるよね。

611 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2006/05/17(水) 19:42:58 ]
>>612
配列に比べコレクションが重いとか
String の + 連結が遅いとかもその類だな。

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

巷の Java 初心者のなんちゃってアーキテクトをなんとかしてくれ。
あー、あんたの検証した DB がボトルネックというのは概ね正しいと思う。


614 名前:デフォルトの名無しさん mailto:sage [2006/05/18(木) 14:26:27 ]
Digesterのルールを自動生成するeclipseプラグインなんてあるのだろうか・・・



615 名前:デフォルトの名無しさん mailto:sage [2006/05/18(木) 15:05:29 ]
commonsみたいな、ユーティリティをフリーで提供している団体ってあるのかなぁ・・・

616 名前:デフォルトの名無しさん mailto:sage [2006/05/18(木) 17:49:22 ]
>>615
xerial.org

617 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 13:31:20 ]
大きなフレームワークを駆使するよりも、
細かいcommonsをフル活用したほうが作業効率がかなり上がるような・・・
まぁ、比較する対象としてはおかしいけど。

618 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 14:24:07 ]
>>617
commonsをあさって機能を試して・・・というのにどのくらい時間がかかるか。

619 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 15:58:34 ]
>>618
いや、そんなに掛からない。

620 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 16:23:37 ]
>>618
commonsを知って試しに使ってみるまで3時間くらいかかりました

621 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 19:04:22 ]
>>620
そーかなぁ・・・。API見たらわかりやすかったから
結構直感的にいけたけど・・・

622 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 19:20:14 ]
Commons次第。
Collections、IO、FileUploadあたりなら、APIとUser Guide見ればすぐ使えるけど、
Digester、Validatorあたりだと、API見てすぐに、とは行かないと思う。

623 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 22:44:19 ]
>>620
その試した機能を自分で実装したら3時間で済んだのか?

624 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 23:19:44 ]
ライブラリによっては依存関係や
バージョン違いに
引っかかってCommonsライブラリを使えるようになるのに
何日もかかったことがあったな俺は。

Maven2が出てからその手間も大幅に省けるようになったのが嬉しい。



625 名前:デフォルトの名無しさん mailto:sage [2006/05/24(水) 18:06:26 ]
strutsのaction-mappingのformの検索をしているのですが、
ファイル検索だと、関係ない箇所のまで名前一致で引っかかるので苦労しております。
xmlのスキーマを理解し、<a><b>xxx</b></a>だと、<a><b>のxxxを探す、というプラグインはないでしょうか。
つまり、xmlファイルに対して、xpath検索できるものです。

626 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 00:27:47 ]
>>625
JXPathでちょちょいと実装、ってのじゃだめ?
大した手間じゃなさそうだし、好きに作れるじゃん。

627 名前:デフォルトの名無しさん mailto:sage [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"
"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 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 23:01:26 ]
>>627
sql-map-config-2.dtd を落としてくるか、配布ファイルのどっかに入ってるだろうから
それを設定ファイルと同じディレクトリに置いて

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

に変えてみたらどう?
確か PUBLIC じゃなく SYSTEM使えばローカルファイル見てくれたと思った。
今試してないんで、やってみ。

629 名前:628 mailto:sage [2006/05/25(木) 23:03:33 ]
間違えた。

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

だねきっと。

あと

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

と書くつもりだった。
疲れてんなーorz

630 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2006/06/01(木) 15:00:17 ]
FTP超つかえる
超感動
f = new FTPClient();
f.connect("xxxx");
f.login("xxx", "xxx");
FTPFile[] files = f.listFiles("xxx");


632 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 12:15:59 ]
>>631
sftpではどうしたらいいの?

633 名前:デフォルトの名無しさん mailto:sage [2006/06/02(金) 14:45:04 ]
>>632
ttp://jakarta.apache.org/commons/vfs/apidocs/org/apache/commons/vfs/provider/sftp/package-summary.html

634 名前:デフォルトの名無しさん mailto:sage [2006/06/03(土) 00:44:13 ]
>>633
Commons NetじゃなくてCommons VFSにあるんだね。
なんでだろ?



635 名前:デフォルトの名無しさん [2006/06/18(日) 02:52:24 ]
Commonsじゃないけど

HttpComponents
jakarta.apache.org/httpcomponents/

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

Http直に触る必要がある時とかにSocket叩くよりは便利、って感じなのかな?
誰か使ってる人いる?

636 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 01:04:51 ]
HTTPClientの次期バージョンが独立しただけでは?

637 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 22:14:34 ]
>>636
え?そうなの?
じゃあHttpClientはいづれなくなっちゃうのか。

638 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 22:32:42 ]
Commonsからはなくなる
ただ、まだbetaなのでVer3はのこしている、だったかな

639 名前:デフォルトの名無しさん mailto:sage [2006/06/22(木) 00:22:05 ]
>>638
なるほど〜。ありがとう!
じゃあこれから覚えるにはこっちのがいいかもだねー。

640 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 17:54:47 ]
>>641
英語苦手だからなぁ・・・。
そもそもJakartaプロジェクトとかにこーゆーバグとかを報告する手順ってどうやるの?
誰か詳しい人、解説して下さい。


643 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 17:47:13 ]
>>640
自己解決。複数スレッドで使いまわしOKだった。

644 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2006/07/04(火) 22:32:27 ]
>>645
java.sun.com/docs/books/jls/third_edition/html/j3TOC.html
コレを読めwwwwwwマジオススメwwwwwwwww
まさにjavaのバイブルwwwwwww

649 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 03:43:06 ]
言語仕様だけわかってもなあ…
せめてJakartaくらい押さえんと。

650 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 03:59:29 ]
押さえても押さえても抜け落ちていくJakartaかな

651 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 12:03:03 ]
じっと手を見る

652 名前:デフォルトの名無しさん [2006/07/05(水) 15:17:09 ]
トンヘの小島の磯の白砂に
ウリ泣き濡れてカニとたはむる

653 名前:デフォルトの名無しさん mailto:sage [2006/07/06(木) 00:04:12 ]
ところで今、Jakartaって何があるの?

654 名前:デフォルトの名無しさん mailto:sage [2006/07/06(木) 00:10:56 ]
>>653
聞いて回答を待つより見た方が早いと思うけど・・・
jakarta.apache.org/




655 名前:デフォルトの名無しさん mailto:sage [2006/07/06(木) 12:07:19 ]
>>653
ココが分かりやすい
ttp://www.biwa.ne.jp/~x208403/

>>654
ボケろということだろ・・・

656 名前:デフォルトの名無しさん [2006/07/06(木) 14:37:44 ]
WEBサーバのメンテ、だいぶかかってるな・・・

657 名前:1 [2006/07/07(金) 01:50:00 ]
はじめましてはじめともうします。

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

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

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



658 名前:2 [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");
  }
}


659 名前:2 [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;
    }
}


660 名前:2 [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();


661 名前:2 [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 名前:デフォルトの名無しさん mailto:sage [2006/07/07(金) 12:26:05 ]
オフィシャルのFAQにそれっぽいのがあるけど、確認した?

663 名前:デフォルトの名無しさん [2006/07/08(土) 02:54:08 ]
Jakartaの名前の由来って何?検索しても都市しかでてこない

664 名前:デフォルトの名無しさん mailto:sage [2006/07/08(土) 03:39:45 ]
ジャワ島(Java島)にある都市ジャカルタだろ。



665 名前:デフォルトの名無しさん mailto:sage [2006/07/08(土) 08:19:14 ]
SunがJDWSDK(その後のTomcat)をASFに寄贈した時に調印を行った会議室の名前。

666 名前:デフォルトの名無しさん mailto:sage [2006/07/09(日) 00:38:34 ]
へートリビアだな

667 名前:デフォルトの名無しさん [2006/07/17(月) 20:57:15 ]
時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)
よろしくおねがいします
i−want−to−study−java@hotmail.co.jp
教える対象は超初心者です。

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


668 名前:WildBoa [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 ]
bbs.girlswalker.com/pc/

670 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 22:01:14 ]
Digesterは結構バージョンによってタグや属性名が変更になってるから注意が必要
Webページの解説がどこもてんでばらばらなんで
DigesterのDTDを読んだ方がいいよ

671 名前:デフォルトの名無しさん mailto:sage [2006/07/18(火) 13:24:26 ]
>668
添付のソースをコンパイルして、
しかるべき場所にクラスパス通した?
zip の中の構造がパッケージ無視してるっぽいんだが。

672 名前:WildBoa [2006/07/19(水) 01:01:55 ]
>670,671
ありがとうございます。

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

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

何処かクラスパスを通す必要があるのでしょうか?

673 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 06:44:41 ]
¥net¥skirnir¥sampleなら¥にクラスパス通さなきゃ

674 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 08:20:47 ]
>各ライブラリはJREの「\lib\ext\」に展開してあります
おい!ちょっと待て!



675 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 10:30:14 ]
>672
Digester に手を出す前にまずやるべき事が有りそう。
Digester 固有の問題じゃないので
とりあえずしかるべき場所(初心者スレなど)で
環境設定の仕方を聞いてきた方が良いよ。

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

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

そのJavaHouseのスレッドを、ごく表面的にしか理解できていないようだね。

678 名前:WildBoa [2006/07/19(水) 23:42:38 ]
>JVMそのものを拡張するとかJVMにパッチを当てる的な使い方をする場所。

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

674様、
ECLIPSEの「構成およびデバッグ」のクラスパスタブで、
ユーザーエントリーに\と\net\skinr.sampleを追加しておりますが、
追加の仕方に問題があるのでしょうか。

679 名前:デフォルトの名無しさん mailto:sage [2006/07/20(木) 00:00:03 ]
>>672
\net\skirnir\sample\において、さらに実行している場所は
ちゃんと「\」なんだろうね。

あと、「.」がクラスパスに入っていないに1ドル。

680 名前:デフォルトの名無しさん mailto:sage [2006/07/20(木) 00:00:21 ]
>>678
問題有り。
余計な設定をして、必要な設定をしていない。

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

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

Digester以前に、基礎から学ぶべきコトが多そうだな。

681 名前:WildBoa [2006/07/20(木) 00:30:47 ]
皆様ありがとうございました、解決しました。

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

追伸
679様、WindowsのJava環境では「.」はデフォルトでクラスパスに
含まれておりませんでしたでしょうか?


682 名前:デフォルトの名無しさん mailto:sage [2006/07/20(木) 09:23:59 ]
>>681
まーインストーラは . をクラスパスに入れてたような記憶があるけどね。
SET CLASSPATH すりゃ判るじゃん。
環境変数なんざいくらでも変更できちまうんだから、
デフォルトを信用しすぎないほうが安全だと思われ。

683 名前:デフォルトの名無しさん mailto:sage [2006/07/20(木) 09:59:15 ]
>>681
どこにもclasspathを設定していない場合のみね。
デフォルト値なんてEclipseや環境変数の設定次第でいくらでも上書きされる。

ホント、中途半端な知識だね。


684 名前:デフォルトの名無しさん mailto:sage [2006/08/22(火) 13:11:26 ]
遅レスだが、CLASSPATHのミスといい、lib\extの使い方といい
QuickTime作ってる人かと思ってしまったw



685 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 04:51:27 ]
てs

686 名前:デフォルトの名無しさん [2006/10/13(金) 02:14:30 ]
BeanUtils.describe(bean); 経由の
シリアライズが超速いと不思議に思ってたら
このメソッドって配列無視しちゃうのね orz

どなかた別にCommonsじゃなくてもよいので、この問題に対応した
Map <-> JavaBeanの相互変換ライブラリ知りませんか?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<205KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef