<% = scriptlet %> [duplicate]에서 <c : set var>에 어떻게 액세스합니까?

Dec 05 2020

JSTL 태그에 대한 하나의 자습서를 따르기 시작했습니다. 사용 된 저장소 튜토리얼이 너무 오래 되었기 때문에 새로운 버전을 사용하여 내 방식대로 시도하고 싶었습니다. 불행히도 나는 지금 갇혀 있습니다. 내가 한 일을 말씀 드릴 테니 도와 주실 수 있기를 바랍니다.

이 두 링크에서 2 개의 jar 파일을 다운로드했습니다 : api , implementation .

내가 얻은 Jar 파일, WebContent/Web-INF/lib. 이제 이렇게하면 오류가 발생합니다.

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

<html>
<body>

<c:set var="varA" value="hello world" />
<%=varA %> //varA cannot be resolved to a variable

</body>
</html>

솔직히 말해서 jar 파일이 말 그대로 내 프로젝트 lib폴더 에 있을 때 왜 import 문이 필요한지 모르겠습니다 . 또한, 여기에서 무엇이 잘못되었으며 왜 편집자가 내 변수 varA를 찾을 수 없는지 아는 사람이 있습니까?

답변

1 LiveandLetLive Dec 05 2020 at 20:49

JSTL 태그를 사용하여 설정된 변수 는 스크립틀릿으로 직접 액세스 할 수 없습니다 . 에 액세스하는 방법에는 두 가지가 있습니다 varA.

1. JSTL 태그 사용 :

<c:set var="varA" value="hello world" />
<c:out value="${varA }"></c:out>

2. 사용 pageContext.getAttribute:

<c:set var="varA" value="hello world" />
<%=pageContext.getAttribute("varA")%>