본문 바로가기
오류 모음

Illegal use of ... as its direct parent

by sgyeong 2024. 5. 29.

 

Illegal use of .... as its direct parent 오류 

 

 

 

 

 

발생 원인 

 

JSP 문법 규칙을 위반하여 발생하였다.

JSTL 태그(<c:if>, <c:forEach> 등)는 JSP 의 특정 태그 구조 내에서만 유효하게 쓰일 수 있다.

스크립틀릿, 선언부, 표현식 안에서 JSTL 태그를 직접 사용하는 경우 또는 잘못된 부모 태그 아래에 사용해서 발생할 수 있다.

 

JSTL 태그를 사용할 때 <c:choose> 를 쓰지 않고 <c:when>만 사용해서 에러가 발생하였다.

 

 

 

해결 방법

 

 

<c:when> 태그 밖을 <c:choose>태그로 감싸서 해결하였다.

 

 

 

** 확인해야 할 것

 

1. 해당 오류가 발생하는 컴포넌트/위젯의 부모 요소가 올바른지 확인

2. 공식 문서에서 해당 요소가 어떤 부모 아래에 올 수 있는지 확인

3. JSX/HTML/Dart 등 언어 문법을 준수하는 구조로 수정