IT

Sun JSTL taglib 선언이 실패하고 "태그 라이브러리 설명자를 찾을 수 없습니다"가 표시됨

itgroup 2023. 8. 16. 22:09
반응형

Sun JSTL taglib 선언이 실패하고 "태그 라이브러리 설명자를 찾을 수 없습니다"가 표시됨

JSP 페이지를 사용하여 값 배열을 인쇄하고 있습니다. JSTL을 사용하려고 <c:forEach>이를 위하여

<c:forEach items="${objects}" var="object">
    <td>${object.name} </td>
</c:forEach>

문제는 JSTL taglib 선언입니다.

 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

IDE가 이 라인에 오류를 표시합니다.

태그 라이브러리 설명자를 찾을 수 없습니다.

대부분의 포럼은 JSTL 라이브러리를 다운로드하기 위해 이전 Sun 사이트를 가리키고 있습니다.이제 이러한 모든 링크는 JSTL 바이너리에 대한 링크가 없는 Oracle 홈 페이지를 가리킵니다.이것은 제가 이것을 성취하기 위한 새로운 접근법이 있다는 것을 믿게 합니다.

이 문제를 해결하려면:

  1. jstl jar클래스 경로에 있어야 합니다.메이븐을 사용하는 경우 jstl에 종속성을 추가합니다.pom.xml여기에 제공된 스니펫을 사용합니다.메이븐을 사용하지 않는 경우 여기에서 jstl jar를 다운로드하여 사용자의WEB-INF/lib.

  2. 상단에 다음과 같은 taglib 지시사항이 있는지 확인합니다.jsp:

     <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    

올바른 다운로드 링크와 명확한 설치 지침은 JSTL Wiki 페이지를 확인하십시오.

를 우스를위놓다니습에마▁the▁your다 위에 놓습니다.[jstl]블랙박스가 나타날 때까지 직접 질문에 태그하고 정보 링크를 클릭합니다.

enter image description here

그런 다음 JSTL 1.2(또는 1.2.1)에 대한 다운로드 링크를 찾을 때까지 JSTL 버전 정보로 스크롤합니다.

enter image description here

마지막으로 웹 앱에서 해당 파일을 정확히 삭제합니다./WEB-INF/lib.

enter image description here

이러한 방식으로 taglib 선언은 더 이상 오류를 제공하지 않아야 하며 JSTL 태그와 함수는 그냥 작동해야 합니다.

저는 단지 제 경험을 공유하고 싶습니다.저도 메이븐을 사용하는 것에 대해 같은 문제를 가지고 있습니다.저는 두 개의 종속성을 추가하여 해결했습니다.

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
    </dependency>
    <dependency>
        <groupId>jstl</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>

Tomcat 서버를 사용하는 경우 Tomcat lib 폴더에 JSTL.jar 파일을 넣는 것이 좋습니다.이렇게 하면 모든 웹 프로젝트에서 JSTL에 자동으로 액세스할 수 있습니다(물론 .jsp 파일에 taglib 선언이 있음).

Apache Standard Taglib을 다운로드하여 프로젝트에 jar를 포함할 수 있습니다.

이것은 메이븐을 사용하지 않는 사람들을 위한 해결책입니다.을 해야 합니다.standard.jar하도록 합니다.lib 파일 이름은 다음과 같습니다. 1jstl 파일 1.1에서 합니다.

<%@taglib prefix="core" uri="http://java.sun.com/jsp/jstl/core"%>

저는 이 문제를 이클립스 IDE를 사용한 메이븐 프로젝트에서 얻었습니다.메이븐 종속성을 먼저 고려하여 프로젝트 빌드 경로의 'Order and Export'를 변경했더니 오류가 사라졌습니다.이클립스 IDE가 메이븐 라이브러리를 로드하기 전에 처음에 내 애플리케이션 소스를 구축하고 있었기 때문인 것 같습니다.

저도 같은 문제를 겪고 있었습니다.enter image description hereSpring Tool Suite 3.2를 종속성 목록에 추가할 때 수동으로 jstl 버전을 1.1.2에서 1.2로 변경하여 오류가 사라졌습니다.

언급URL : https://stackoverflow.com/questions/13595511/sun-jstl-taglib-declaration-fails-with-can-not-find-the-tag-library-descriptor

반응형