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を兼ねた便利なクラスも用意されており、その数は豊富である。
552 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 20:48:27 ] そうだな、証拠は残すべき たとえ、客が仕様書を読んでないとしても。
553 名前:デフォルトの名無しさん mailto:sage [2006/03/16(木) 23:35:26 ] Java以外だとエディタとかで自動判別する奴結構あるじゃん? あれってどーやってんの?
554 名前:デフォルトの名無しさん mailto:sage [2006/03/17(金) 15:41:55 ] 日本語の場合、 1. iso-2022-jpだとそれを示す並びがあるので判別可能。 2. euc-jp と shift_jis は本質的に判別が難しいが、片方のエンコードにはあるのに、 もう片方のエンコードにはないコード列が存在するので、 それを検出した段階で判別可能。 ってやり方だと思う。 早い話、「片方のエンコードにしか存在しないコード列」を使っていない文章は判別不可能になる。 自動判別持ち出すんなら、そういうケースに対して どう対処すべきかくらい考えてて然るべき。 何も考えていないんなら、ただのバカ。
555 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2006/03/20(月) 13:23:53 ] >>555 それは無理だな。 リストのマップも、マップのリストも無理だよ。 リストマップともに扱いが特別だから、併用は難しいね
557 名前:デフォルトの名無しさん mailto:sage [2006/04/20(木) 17:34:51 ] BeanUtilすげー賢いね。 booleanに文字列の1とか突っ込んだらちゃんとtrueにしてくれた。 1以外はすべてfalseね。 こりゃー便利だわー。
558 名前:デフォルトの名無しさん mailto:sage [2006/04/20(木) 20:08:17 ] Cなら0がfalseで他がtrueにならね?
559 名前:デフォルトの名無しさん [2006/04/21(金) 23:12:26 ] commonsのライブラリ同梱でアプリ配るときって、どうすればいいの? なんか一緒に入れとかなきゃいけないファイルとか教えて。
560 名前:デフォルトの名無しさん mailto:sage [2006/04/22(土) 00:52:55 ] Apacheの製品を含んでいるアプリを配布する場合は 「This product includes software developed by the Apache Software Foundation www.apache.org/ 」 とどこかに明記していればOK。 たとえば、Eclipseだとメニューバーのヘルプの「Eclipse SDKについて」を参照すると これが書いてある。 アプリのライセンス文に上記の一文を含めておくのでも良い。 あとはかなり自由。ソースコードの公開義務や添付義務は無い。商用利用OK。
561 名前:デフォルトの名無しさん mailto:sage [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の書かれたファイルを一緒に添付しろってこと。
562 名前:561 mailto:sage [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の条件下にあることを理解させろ、という ことだと思う。
563 名前:559 [2006/04/23(日) 20:41:41 ] >>560 >>561 丁寧な説明ありがとう! 意外と簡単に配布できるんだね。
564 名前:デフォルトの名無しさん mailto:sage [2006/04/27(木) 13:32:52 ] 2つ以上のInputStreamから読込み待ち?することはできるでしょうか。 例えば、標準入力とネットワークストリームを常に読込みスタンバイして データが転送されたストリームのデータを取得するとか。 IOUtilsには、らしきものがなかったような・・・
565 名前:デフォルトの名無しさん mailto:sage [2006/04/27(木) 13:46:02 ] そりゃcommonsじゃなくて質問スレだな スレッド分けて待機させればいいだけだが
566 名前:デフォルトの名無しさん mailto:sage [2006/04/27(木) 17:25:26 ] Configuration#getProperties()の機能ってわかる人いますか?
567 名前:デフォルトの名無しさん mailto:sage [2006/04/27(木) 18:42:32 ] ノシ
568 名前:デフォルトの名無しさん mailto:sage [2006/04/28(金) 15:20:09 ] PropertiesConfiguration#setProperty同期とってねー。 パッケージの全ソースgrepしたけど、synchronizedが4箇所だけで、セットとは関係ないところに・・・
569 名前:デフォルトの名無しさん mailto:sage [2006/04/30(日) 15:04:24 ] Commons Configuration はまだバグが多いので 使い勝手がよろしくないなー。 自動リロード戦略クラスを適用しても 瀬定ファイルの修正を監視してくれなかったし。
570 名前:デフォルトの名無しさん mailto:sage [2006/05/01(月) 10:28:44 ] >>569 瀬定ファイルってなに? 監視はうまく動いてたよ
571 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 00:29:15 ] C#版Commonsみたいなプロジェクトとかってないの? 誰かガッツンガッツン移植してよ。
572 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 00:59:59 ] >>571 .net で C# 限定にする意味があんのか?
573 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 01:34:03 ] マイクロソフト自身がJakarta Projectみたいなことしてて いろんなライブラリをソースごと公開してるんじゃなかったっけ。 おれは良く知らんのだけど。
574 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 11:04:54 ] >>570 設定ファイルのtypo XMLファイルのviで編集しても 監視が反映されていなかたことがある。 XMLConfigurationという奴だったかな? もうひとつ、XMLPropertiesConfigurationもうまくいかず
575 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 11:06:36 ] >>573 下手に移植するとApache Software License違反に なるんじゃないのか? NantとかNUnitとかいうのがM$に吸収されてはいるが。 ライセンス形態をBSDにするとすべてマイクロソフトに持ってかれるが ASLだとそうはいかないと思うのだが。
576 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 12:03:39 ] >>574 のるほど。 ただ、Configurationは便利だね。 MapやPropertiesに変更できることも大きいし。 ソースをそんなに変更しなくても、MapやPropertiesから移植は簡単だ
577 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 17:05:38 ] >>575 いや、Jakartaを移植してるんじゃないよ。共用コンポーネントを 作ってるってだけで。 どこでみたんだっけと思って検索したら@ITだった。 ttp://www.atmarkit.co.jp/fdotnet/entlib/index/index.html
578 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 19:38:11 ] SandboxのIdって、jarリリースしていないのでしょうか。ソースしかありません。
579 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2006/05/03(水) 13:41:02 ] >>579 > ASFって.NET系にはあまり力入れてないの? 聞いたことがない。 背後でJavaやLinuxを推しているIBM等の企業がかかわっているらしいからなあ。 MS製品対応ソフトウェアの開発はやっていなさそうな気がする。 なにせ、MSはオープンソースを嫌っているし、オープンソースは共産主義だ などめちゃくちゃなこといっているし。 GPLとくらべたらASLは共産主義とまではいかないんだけどね。 たとえMSが一部の自社製品をSourceForgeに公開したとしても オープンソース全体を敵に回すような不可解な発言が、 無理して.NETに力を入れない方がいいという暗示を示しているのではないかと。 それで今.NETが流行らなくなっているような
582 名前:デフォルトの名無しさん mailto:sage [2006/05/03(水) 22:38:47 ] >>581 聞いたことが無いって、あーた log4net とかも聞いたこと無いの? .net も言うほど、死んでないよ。俺は Java メインだが、 今は .net 案件のほうが単価が上げれる。色々な会社の話を聞く限り .net で技術的に自信を持っている会社が少なくて、金額的にはおいしい。
583 名前:デフォルトの名無しさん mailto:sage [2006/05/03(水) 22:40:24 ] >>582 Enterprise Libraryのことだろ。 しかしJakartaとくらべるとまだまだものが少ないし オープンソースコミュニティの活発さが足りないし、 まだまだって感じがする。
584 名前:デフォルトの名無しさん mailto:sage [2006/05/09(火) 19:03:28 ] org.apache.commons.mailいけるぞ!
585 名前:デフォルトの名無しさん [2006/05/09(火) 22:32:31 ] Commons Mail? Java Mail APIを補足するやつなのか? どうういけるのか感想きぼんぬ
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 ] トンヘの小島の磯の白砂に ウリ泣き濡れてカニとたはむる