LoginSignup
0
1

More than 3 years have passed since last update.

JSPで接頭辞cがバインドされていませんとなった時の対応方法

Posted at
  • 環境
    • Windows10
    • Apache Tomcat 8.5.47
    • Eclipse Version: Oxygen.3a Release (4.7.3a)
    • Java version 1.8.0_231

事象 : JSPファイルを使った処理でログファイルにエラーが出た

Caused by: org.xml.sax.SAXParseException: 要素"c:choose"の接頭辞"c"がバインドされていません。
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
...

原因 : JSPファイルにJSTLのCoreライブラリが定義されていないから

<%@ page language="java" contentType="text/xml; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page trimDirectiveWhitespaces="true" %>
<c:choose>
  <c:when test="${条件1}" >
    ...処理1...
  </c:when>
  <c:when test="${条件2}" >
    ...処理2...
  </c:when>
</c:choose>

対応1 : JSPファイルに接頭辞cを定義する

<%@ page language="java" contentType="text/xml; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
...省略..

「"http://java.sun.com/jsp/jstl/core" のタグ・ライブラリー記述子が見つかりません」となった時の対応方法

JSPファイルに接頭辞cを定義してコンパイルエラーになった場合は、そもそもcoreタグライブラリがないのでjarファイルを配置します。

  1. Apache Tomcatのサイトから環境に合ったjarをダウンロードする。
    • 今回のバージョンは1.2.5なので以下のjarをダウンロード
      • taglibs-standard-impl-1.2.5.jar
      • taglibs-standard-spec-1.2.5.jar
      • taglibs-standard-jstlel-1.2.5.jar
  2. jarファイルをWEB-INF/libフォルダに配置する
0
1
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
0
1