LoginSignup
1
0

【Java】jakarta.servlet.ServletException: java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/TagLibraryValidator【エラー解決】

Last updated at Posted at 2024-03-08

はじめに

JSPで表題のエラーが出て苦戦したので、エラー解決方法をメモ。

やろうとしたこと

Eclipse上でこういうJSPを用意して、全てのJSPにインクルードするようにweb.xmlの方で設定。

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
web.xml
<web-app>
    <!-- JSP共通ファイルをインクルード -->
	<jsp-config>
		<jsp-property-group>
			<url-pattern>*.jsp</url-pattern>
			<page-encoding>UTF-8</page-encoding>
			<include-prelude>/WEB-INF/include.jsp</include-prelude>
		</jsp-property-group>
  	</jsp-config>
</web-app>

おこった事象

作ったアプリのどの画面でもいいのでアクセスすると、下記のエラーが発生。
無題.png

やることその1(JSTLライブラリの入手)

この記事にある通り、JSTLのライブラリを入手する。

やることその2(入手したライブラリをビルド・パスに設定)

プロジェクトを右クリック⇒「ビルド・パス」⇒「外部アーカイブの追加」を選択。
無題.png

エクスプローラが開くので、入手したライブラリを選択する。
「参照ライブラリー」で表示されるようになります。
無題.png

やることその3(デプロイメント・アセンブリーの設定)

プロジェクトの「プロパティー」を開く。
無題.png

「デプロイメント・アセンブリー」⇒右側の「追加」を押下。
無題.png

「Javaビルド・パス・エントリー」を選択して「次へ」を押下。
無題.png

ライブラリを選択して、「完了」を押下。
無題.png

「適用して閉じる」。

おしまい。

このエラーに1日かかっちまったぜくそう

よくよく考えるとMaven使ってJSTLのライブラリ取得すればデプロイメント・アセンブリーの設定不要じゃん。まあいいや。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0