GO HOME

「EclipseではじめるJavaプログラミング入門」追補情報

※ここは、拙著のJava入門書「EclipseではじめるJavaプログラミング入門」(秀和システム、424頁CD-ROM付、2800円+税)に関 する コーナーです。現在、初版の見直し作業をしていますが、校正情報やよくある質問の答えなどをここでまとめて掲載します。


★バグ・校正情報★

※ここでは、ソースコードや内容に関する記述間違い、校正ミスなどについて整理しておきます。


※P.141 WindowListenerクラスのまとめの3行前

ウインドウを閉じる際の処理は「windowClosed」――と書 かれていますが、その前のリストにあるように正しくは「windowClosing」で す。windowClosedはウインドウを『閉じた』際の処理になります。


※P.168 isIndexSelected, isMultipleModeの説明部分

isIndexSelectedの基本フォームの説明部分で返値がintになっていました。正しくは「boolean」です。また、isMultipleModeの説明文が切れて しまっていました。これは、複数行選択モードを示すものです。 trueならば複数行選択モードとなります。


※P.298 <jsp:forward>タグで値を渡す まとめ部分

<jsp:forward page=ページのパス />
    <jsp:param name=名前 value=値 >
    ・・以下略・・・
    ↓
<jsp:forward page=ページのパス >
    <jsp:param name=名前 value=値 />
    ・・以下略・・・
本来、閉じないはずの冒頭の<jsp:forward>の末尾が/>になっており、閉じるはずの<jsp:param>が />でなくただの>になっていました。これらは/の入るべき場所と入れてはいけない場所が逆になっていました。


※P.345 TLDファイルの<taglib>タグの基本形

<tlib-version>1.0</tlib-version>
    ↓
<tlib-version>タグライブラリのバージョン</tlib-version>

基本形を整理した部分で、<tlib-version>だけ元の値のまま残ってしまっていました。タグの名前を見ればわかると思いますが、こ れはタグライブラリのバージョン番号を記します。


※もし、他に間違いが見つかりましたら、どうか御連絡下さいませ。

★追補情報★


※ここでは、本書の内容を補うための追加情報などをまとめる予定です。



※Eclipseが起動しない!

Eclipseを起動しようとすると、「JVM terminated. Exit code=1」といったエラーが現れて起動できない、という症状の方がいらっしゃるようです。これは、他にJavaの開発環境をインストールしてあった り、複数のJava2 SDKが入っているような場合に、起動するためのJVMが正しく認識できないことで生じるようです。
 もし、このような症状になった場合には、以下の2つを試してみて下さい。

方法その1.
使用するJava2 SDKの中にあるJREのフォルダ(「jre」という名前になっている)をコピーし、Ecilpseがインストールされているフォルダ内 (eclipse.exeがあるのと同じ場所)にペーストする。

方法その2.
eclipse.exeのショートカットを作成する。そのプロパティを表示し、ショートカットの「リンク先」の指定に「-vm ○○」という形で使用するJVMのパスを指定する。そして起動の際にはこのショートカットを使って起動する。
(リンク先の指定例: c:\eclipse\eclipse.exe -vm c:\java2sdk1.4.2\bin\javaw.exe )


※Tomcat 5.0.25 の起動と終了について

本書では、Tomcatのバージョンは5.0.19をベースに説明していますが、2004/7/12時点で、既に5.0.25がリリースになっています (更にその後、バージョンはあがってます)。 このバージョンでは、メニューの名前や使い方などが若干違っていますので補足しておきます。

・Tomcatの起動は、5.0.19ではスタートメニューの「Tomcat 5.0」から「Start Tomcat」を選びましたが、5.0.25では、メニュー名は「Monitor Tomcat」に変わっています。このメニューを選ぶと、本書の説明にあるのと同じTomcatアイコンがタスクバーに表示されますので、 そこから「Start Service」メニューを選びま す。

・Tomcatの終了は、タスクバーのTomcatアイコンから「Stop Service」メニューを選びます。


※413ページ メールの送信システムについて

ここでは、javaMailを使わずJ2SE標準のパッケージを用いてメール送信するプログラムを書い ていますが、これを実際に利用してみた場合、「日本語を送信すると文字化けしてしまう」ということに気づくかと思います。ここでは半角英数字しか送信して いないのでそのあたりの処理については触れていませんが、「日本語は使えないのか?」と思う人も多いでしょうから補足しておきます。
 これは、使用しているsun.net.smtp パッケージに問題があるわけではありません。これは単にSMTPを使って送信するだけのものであり、文字コードうんぬんの機能など持っていません(という より、SMTPというのはそういうものです)。要するに、送る側が問題なく送信できるデータに変換してやればいいのです。具体的には、ISO2022JP という文字コードに変換したものを送信すればよいのです。
// import java.nio.*;
// import java.nio.charset.*;

Charset iso = Charset.forName("ISO2022JP");
CharsetEncoder encoder = iso.newEncoder();
CharBuffer cbuf = CharBuffer.wrap(変換前テキスト.toCharArray());
ByteBuffer bbuf = encoder.encode(cbuf);
String 変換済みテキスト = new String(bbuf.array());

 これは、テキストをISO2022JPのエンコードに変換する簡単な手続きです。Charset、 CharsetEncoderといったものを使い、変換処理を行ないます。上の処理を使ってあらかじめ日本語のテキストをエンコードしておき、それを SmtpClientで送信すれば文字化けは起こらなくなります。



GO BACK
GO HOME