IDEA를 사용하여 jsp를 작성할 때 EL 표현식이 작동하지 않는 문제 및 해결 방법

2644 단어 ideajspel표현식
IDEA를 사용하여 maven+springMVC 프로젝트를 개발할 때 EL 표현식을 로드하지 않는 문제가 발생하면 어떻게 처리합니까?아래의 작은 편제가 여러분에게 실현 코드를 가져왔으니 함께 보십시오
다음 JSP 코드를 로드합니다.

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
  <title>Title</title>
</head>
<body>
  <c:forEach items="${userList }" var="lists">
    <h3>${lists.username }</h3>
    <h3>${lists.password }</h3>
  </c:forEach>
</body>
</html>
다음과 같은 결과가 표시됩니다.

${lists.username }
${lists.password }
일반적으로 JSTL 패키지를 도입하려면 EL 표현식을 수행해야 하지만 그렇지 않습니다.
해결 방법:
JSP 시작 시 추가<%@page isELIgnored="false"%>isELIgnored는 EL 표현식을 무시하는지 여부를 나타냅니다.
isELIgnored 속성 JSP 2.0에 새로 도입된 속성은 JSP 1.2 및 이전 버전만 지원하는 서버에서 이 속성을 사용하는 것은 합법적이지 않습니다.이 속성의 기본값은 웹 응용 프로그램에서 사용하는 웹에 의존합니다.xml 버전입니다.하면, 만약, 만약...xml은 servlet 2.3(JSP 1.2 대응) 또는 이전 버전을 지정합니다. 기본값은true입니다. (기본값 변경은 여전히 합법적입니다. JSP 2.0 호환 서버에서 이 속성을 사용할 수 있습니다. 웹.xml 버전과 상관없습니다.)
Servlet 버전 보기
웹을 엽니다.xml 파일이 보여요.

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >
Ctrl을 누른 채 링크를 클릭하면 78줄 정도에 주석이 표시됩니다.

<!--
This is the XML DTD for the Servlet 2.3 deployment descriptor.
All Servlet 2.3 deployment descriptors must include a DOCTYPE
of the following form:
 <!DOCTYPE web-app PUBLIC
  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
  "http://java.sun.com/dtd/web-app_2_3.dtd">
-->
번역하면
"Servlet 2.3 배포 설명자의 XML DTD입니다. 모든 Servlet 2.3 배포 설명자는 다음 DOCTYPE에 포함되어야 합니다."
분명히 이게 서브렛 2.3 버전이에요.
그래서
isELIgnored의 속성은 기본값true...
만약 또 문제가 있다면?
마븐 dependencies에 인용 패키지를 추가하는 것을 권장합니다.

<dependency>
  <groupId>jstl</groupId>
  <artifactId>jstl</artifactId>
  <version>1.2</version>
</dependency>
총결산
위에서 말한 것은 편집자가 여러분께 소개한 IDEA를 사용하여 jsp를 작성할 때 EL표현식이 작용하지 않는 완벽한 해결 방법입니다. 여러분께 도움이 되었으면 합니다. 궁금한 점이 있으면 저에게 메시지를 남겨 주시면 편집자는 제때에 답장을 드리겠습니다.여기에서도 저희 사이트에 대한 지지에 감사드립니다!

좋은 웹페이지 즐겨찾기