サーブレット初期化時にClassNotFoundExceptionが発生した。

開発環境を構築後にEclipse上からwebシステムを起動した時にエラーが起きました。

 

現象
Login.htmlからサーブレットを呼び出すときにClassNotFoundExceptionが発生

 

原因
test/bin/main/webapps/WEB-INF/classes配下にClassファイルが作成されていない為
そのClassファイルが作成されない原因はTomcatのクラスパス変数に誤り、または設定されていない為。

 

対処

Tomcatのクラスパス変数を修正する。

Eclipseにて、ウィンド→ 設定を選択

設定画面にて、Java→ビルド・パス→クラスパス変数を選択

クラスパス変数画面にて新規ボタンを押下

名前 TOMCAT_HOME

パス C:/pleiades/tomcat/7

 

【Java】条件演算子

条件演算子とは

条件演算子とはIF文のように条件式の結果により真か偽のどちらかを実行する演算子です。

 

書式

条件式 ? 真 : 偽;

 

7行目と12行目で条件演算子をつかっています。

public class TestMain {
	public static void main(String[] args) {

		int i = 9;

		String str = "";
		str = i >= 10 ? "10以上" : "10以下";

		System.out.println("1回目:" + str);

		i = 10;
		str = i >= 10 ? "10以上" : "10以下";

		System.out.println("2回目:" + str);

	}
}

条件式の値が真(true)だった場合に左側の文字列”10以上”が格納され、偽(false)の場合、右側の文字列”10以下”が格納されます。

 

実行結果

1回目:10以下
2回目:10以上

 

備考

IF文を簡潔に記載する方法として条件演算子が使われることがあります。
簡潔な条件なら条件演算子で問題ないのですが、複雑な条件やネストが深い場合はIF文を使った方が判りやすいと思います。