- PR -

「第4回 XMLを簡単にJavaオブジェクトにマッピング」について

投稿者投稿内容
point
会議室デビュー日: 2005/08/15
投稿数: 10
投稿日時: 2005-08-15 13:19
JAVAを勉強しているものですが「@IT:現場に活かすJakarta Project 第4回」ところで質問があります。
サンプルプログラム(http://www.atmarkit.co.jp/fjava/rensai2/jakarta04/sample.zip)をダウンロードしてコンパイルしようとしたのですが
Sample.javは
Sample.java:20: シンボルを解釈処理できません。
シンボル: クラス SampleConfig
位置 : net.skirnir.sample.Sample の クラス
SampleConfig sc = new SampleConfig();
^
Sample.java:20: シンボルを解釈処理できません。
シンボル: クラス SampleConfig
位置 : net.skirnir.sample.Sample の クラス
SampleConfig sc = new SampleConfig();
^
エラー 2 個
とエラーでしまいSampleConfig.javaは
SampleConfig.java:4: パッケージ org.apache.commons.digester は存在しま
import org.apache.commons.digester.*;
^
SampleConfig.java:5: パッケージ org.xml.sax は存在しません。
import org.xml.sax.*;
^
SampleConfig.java:15: シンボルを解釈処理できません。
シンボル: クラス DataSourceConfig
位置 : net.skirnir.sample.SampleConfig の クラス
private DataSourceConfig dataSourceConfig_;
^
SampleConfig.java:58: シンボルを解釈処理できません。
シンボル: クラス DataSourceConfig
位置 : net.skirnir.sample.SampleConfig の クラス
public DataSourceConfig getDataSourceConfig()
^
SampleConfig.java:69: シンボルを解釈処理できません。
シンボル: クラス DataSourceConfig
位置 : net.skirnir.sample.SampleConfig の クラス
public void setDataSourceConfig(DataSourceConfig dataSourceConfig)
^
SampleConfig.java:26: シンボルを解釈処理できません。
シンボル: クラス Digester
位置 : net.skirnir.sample.SampleConfig の クラス
Digester digester = new Digester(); // -(1)
^
SampleConfig.java:26: シンボルを解釈処理できません。
シンボル: クラス Digester
位置 : net.skirnir.sample.SampleConfig の クラス
Digester digester = new Digester(); // -(1)
^
SampleConfig.java:47: シンボルを解釈処理できません。
シンボル: クラス SAXException
位置 : net.skirnir.sample.SampleConfig の クラス
} catch (SAXException ex) {
^
エラー 8 個
とでてしまいます。
説明のほうは
「サンプルプログラムをコンパイルしてクラスパスを適切に設定したうえでコマンドラインにて、

java net.skirnir.sample.Sample XMLファイル名

というコマンドを実行することで、生成したオブジェクトツリーが持つ設定値を表示させることができます。
」と書いてあり特にコンパイルのことについて書いてありません。
何がいけないか教えてください。
お願いします。
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2005-08-15 13:30
pointさんが使用されているJavaのバージョンはいくつでしょう?

引用:

SampleConfig.java:5: パッケージ org.xml.sax は存在しません。
import org.xml.sax.*;


での「パッケージ org.xml.sax」はJava1.4からのものです。
記事でもこのように記述があるので、1.4未満の場合はSAXパーサを用意してあげてください。
「JavaプラットフォームとしてJ2SEのバージョン1.3以前をお使いの場合は別途CrimsonやXercesなどのSAXパーサを用意する必要があります。」


引用:

SampleConfig.java:4: パッケージ org.apache.commons.digester は存在しま
import org.apache.commons.digester.*;


は落としてきたものにCLASSPATHが通っているかを確認したほうが良いかと思います。

[ メッセージ編集済み 編集者: 夏椰(かや) 編集日時 2005-08-15 13:35 ]
point
会議室デビュー日: 2005/08/15
投稿数: 10
投稿日時: 2005-08-15 13:35
javaバージョンはjdk1.3.1_15です。
よろしくお願いします。
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2005-08-15 13:37
引用:

pointさんの書き込み (2005-08-15 13:35) より:
javaバージョンはjdk1.3.1_15です。
よろしくお願いします。


ごめんなさい。
編集中に返答してくださったのですね。

Java1.3であれば、SAXパーサを使えるようにしてあげる必要があります。
point
会議室デビュー日: 2005/08/15
投稿数: 10
投稿日時: 2005-08-15 13:39
引用:

夏椰(かや)さんの書き込み (2005-08-15 13:37) より:
引用:

pointさんの書き込み (2005-08-15 13:35) より:
javaバージョンはjdk1.3.1_15です。
よろしくお願いします。


ごめんなさい。
編集中に返答してくださったのですね。

Java1.3であれば、SAXパーサを使えるようにしてあげる必要があります。



ありがとうございます。やってみます。
point
会議室デビュー日: 2005/08/15
投稿数: 10
投稿日時: 2005-08-15 13:47
たびたびすいません。JAVAのバージョンを1.4.2_08にしてもう一度コンパイルしたところ
C:\sample\src\skirnir\sample>java Sample.java
Exception in thread "main" java.lang.NoClassDefFoundError: Sample/java

C:\sample\src\skirnir\sample>java SampleConfig.java
Exception in thread "main" java.lang.NoClassDefFoundError: SampleConfig/java
と出てきてしまいました。
Sampleの方はvoid mainがあるのですがどうしてでしょうか。
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2005-08-15 14:04
引用:

pointさんの書き込み (2005-08-15 13:47) より:
たびたびすいません。JAVAのバージョンを1.4.2_08にしてもう一度コンパイルしたところ
C:samplesrcskirnirsample>java Sample.java
Exception in thread "main" java.lang.NoClassDefFoundError: Sample/java



えっと・・・拡張子が.javaのものを「java」コマンドに渡しているんですか?
#記述ミスです?

で、CLASSPATHに"."って入っていますか?
point
会議室デビュー日: 2005/08/15
投稿数: 10
投稿日時: 2005-08-15 14:13
引用:

夏椰(かや)さんの書き込み (2005-08-15 14:04) より:
えっと・・・拡張子が.javaのものを「java」コマンドに渡しているんですか?
#記述ミスです?

で、CLASSPATHに"."って入っていますか?


javacにするのを忘れてました。javacでコンパイルしたところ
C:\sample\src\skirnir\sample>javac Sample.java
Sample.java:20: シンボルを解決できません。
シンボル: クラス SampleConfig
場所 : net.skirnir.sample.Sample の クラス
SampleConfig sc = new SampleConfig();
^
Sample.java:20: シンボルを解決できません。
シンボル: クラス SampleConfig
場所 : net.skirnir.sample.Sample の クラス
SampleConfig sc = new SampleConfig();
^
エラー 2 個

C:\sample\src\skirnir\sample>javac SampleConfig.java
SampleConfig.java:4: パッケージ org.apache.commons.digester は存在しません
import org.apache.commons.digester.*;
^
SampleConfig.java:15: シンボルを解決できません。
シンボル: クラス DataSourceConfig
場所 : net.skirnir.sample.SampleConfig の クラス
private DataSourceConfig dataSourceConfig_;
^
SampleConfig.java:58: シンボルを解決できません。
シンボル: クラス DataSourceConfig
場所 : net.skirnir.sample.SampleConfig の クラス
public DataSourceConfig getDataSourceConfig()
^
SampleConfig.java:69: シンボルを解決できません。
シンボル: クラス DataSourceConfig
場所 : net.skirnir.sample.SampleConfig の クラス
public void setDataSourceConfig(DataSourceConfig dataSourceConfig)
^
SampleConfig.java:26: シンボルを解決できません。
シンボル: クラス Digester
場所 : net.skirnir.sample.SampleConfig の クラス
Digester digester = new Digester(); // -(1)
^
SampleConfig.java:26: シンボルを解決できません。
シンボル: クラス Digester
場所 : net.skirnir.sample.SampleConfig の クラス
Digester digester = new Digester(); // -(1)
^
エラー 6 個
環境変数のCLASSPATHは
C:\jboss-3.2.0RC1_tomcat-4.1.18\client\jbossall-client.jar;
です。
Pathは
C:\Oracle\product\10.1.0\Client_2\bin;C:\Oracle\product\10.1.0\Client_2\jre\1.4.2\bin\client;C:\Oracle\product\10.1.0\Client_2\jre\1.4.2\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\j2sdk1.4.2_08\bin;C:\apache-ant-1.6.5-bin\apache-ant-1.6.5\bin
です。

スキルアップ/キャリアアップ(JOB@IT)