
こんにちは。
毎回初心者な質問で恐縮です。。
javaの中でXMLから特定のデータを抽出して表示したいのでインターネット上でサンプルがないか探していたところ、「アットマーク・アイティ」のホームページでちょうどよいものを見つけたのでそれを参考に作成しはじめたのですが、
DOMParser parser = new DOMParser();
という記述があり、ここでコンパイルがとまってしまいます。
import org.apache.xerces.parsers.*;
がなかったのかと思い、記述を追加したところ今度は「パッケージは存在しません」と言われてしまいます。
jarファイルが足りないのかと調べていたのですが、このパッケージを使うために何が必要なのか参考資料がみつかりません。
「xerces」や「Parser」で調べたところ、自分のTOMCATのフォルダ内の\common\endorsedのフォルダ内に「xercesImpl.jar」「xmlParserAPIs.jar」がありました。
何がたりないのかご存知の方、教えてください。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
こんばんは。
@IT「Javaで実現するDOM/SAXプログラミング」
http://www.atmarkit.co.jp/fxml/rensai/xmljava01/ …
上記のページによると「xerces.jar」を
クラスパスに設定するとあります。
http://xml.apache.org/dist/xerces-j/
から「Xerces-J-bin.1.4.4.zip」をダウンロードして
解凍すると「xerces.jar」がありますので、
こちらを暮らすパスに設定すればコンパイルは
通ると思います。
No.4
- 回答日時:
「xercesImpl.jar」「xmlParserAPIs.jar」でいいと思います。
jar tvf xmlParserAPIs.jar
で見れば、含まれているのがわかります。
コンパイル時のクラスパスに追加すればいいです。
「xerces.jar」は古いバージョンだったかと思います。
ただ、私も特別なことをしないときはatonさんの書かれているDocumentBuilderFactory経由です。そちらに慣れているというだけで、DOMParserでもいいんですけど。
No.3
- 回答日時:
Javaの標準ライブラリーに DOMParser というクラスはないはずです。
代わりに javax.xml.parsers.DocumentBuilderFactory と javax.xml.parsers.DocumentBuilder を組み合わせると同等のことが実現できます。
Javaの標準ライブラリーに含まれないクラス(例えば org.apache.xerces.parsers.DOMParser)を利用する場合は,それらがjavacやjavaから「見える」ようにしてやる必要があります。
具体的には,javacやjavaがライブラリーを検索する範囲に,org.apache.xerces.parsers.DOMParserのクラスファイル(を含むjarファイルでも可)が存在していなくてはなりません。
そのための方法の一つは,ライブラリー検索範囲=クラスパスをorg.apache.xerces.parsers.DOMParserのクラスファイル(を含むjarファイル)が存在する場所を含むよう拡張すること,
http://java.sun.com/j2se/1.4/ja/docs/ja/tooldocs …
javac - Java プログラミング言語コンパイラ
http://java.sun.com/j2se/1.4/ja/docs/ja/tooldocs …
クラスパスの設定
もう一つは,標準的なライブラリー検索範囲(例えば ${JAVA_HOME}/lib/ext )に,org.apache.xerces.parsers.DOMParserのクラスファイル(を含むjarファイル)を置いてやることです。
http://www.noblab.jp/technotes/java_ext/
Java の拡張ディレクトリ (ext) - TechNotes
いずれにせよ,その辺りのことは,
http://java.sun.com/j2se/1.4/ja/docs/ja/tooldocs …
クラスの検索方法
に書いてあります。
ともかく,Javaでプログラミングをするのであれば,最後に挙げたURLのページに書かれていることは,最低限理解しておくべきでしょう。そうしなければ,いつまでたっても「クラスが存在しない」とか「パッケージが存在しない」というエラーを繰り返すことになります。
お礼が大変遅くなり申し訳ありません。
回答ありがとうございます。
非常に初歩的な質問だとは思っていますが、教えていただき助かりました。
勉強が足りない状態で「つくれ」と言われてしまったので納期優先で「勉強しながら~~」で作成しています。
がんばりますので、また質問をみかけましたらぜひ教えてください。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 複数ファイルのデータの統合について 12 2022/05/14 12:03
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Excel(エクセル) 【マクロ】フォルダAからダBへファイルを、ファイルの更新日時の条件で、1つづつ移動するには? 3 2022/08/25 09:56
- Google Drive Google Drive (G:)の容量を、購入した容量と一致させるにはどうすればよいでしょうか? 1 2022/04/10 22:32
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- YouTube ユーチューブへの動画投稿にサムネイルを付ける方法は? 1 2022/07/21 23:45
- UNIX・Linux 【初心者】aws lightsail で自作のオリジナルテーマのwordpressを設定する方法 1 2022/07/14 09:46
- Excel(エクセル) EXCEL マクロで 同じフォルダ内の複数ファイルの複数行全体を選択して1つのファイルに集約 4 2022/09/27 18:41
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- 画像編集・動画編集・音楽編集 画像の一括圧縮 1 2022/12/02 21:56
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Eclipse・プロジェクトで、フォ...
-
ファイルのパスの取得について
-
classファイルについて
-
javaクラスファイルをEclipseで...
-
SVFの設定について:クラスパス...
-
「main メソッドを持つクラスが...
-
earファイルを展開する方法
-
プログラム実行の際に、「ソー...
-
java クラスファイルとソースコ...
-
Eclipse「リフレッシュ」と「ク...
-
【Eclipse】パッケージ・エクス...
-
ディレクトリを操作したいと思...
-
ソース添付に Thread.class の...
-
EclipseでのJSP・Servlet開発に...
-
JARのパスの通し方
-
”書きこみできません”とエラー...
-
eclipse でclassesフォルダーが...
-
VisualStudioでC++クラスを追加...
-
「削除するか、クラスパスの正...
-
jarファイルについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipse・プロジェクトで、フォ...
-
classファイルについて
-
SVFの設定について:クラスパス...
-
javaクラスファイルをEclipseで...
-
Eclipse「リフレッシュ」と「ク...
-
eclipse でclassesフォルダーが...
-
earファイルを展開する方法
-
EclipseでHTTP404エラーが出る。
-
java クラスファイルとソースコ...
-
jdbcドライバのjarファイルにク...
-
【Eclipse】パッケージ・エクス...
-
「メイン・マニフェスト属性が...
-
「削除するか、クラスパスの正...
-
「main メソッドを持つクラスが...
-
ResourceBundleクラスの使い方
-
『ClassNotFoundException: org...
-
プログラム実行の際に、「ソー...
-
VisualStudioでC++クラスを追加...
-
EclipseでのJSP・Servlet開発に...
-
サーバから落としてきたWebアプ...
おすすめ情報