아메리카노가 그렇게 맛있답니다 여러분

org.apache.jasper.JasperException: /main.jsp (line: [2], column: [19]) quote symbol expected
 at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:41)
 at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:291)
 at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:97)
 at org.apache.jasper.compiler.Parser.parseAttribute(Parser.java:238)
 at org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:169)
 at org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:197)


대략 이 비슷하게 뜨는 오류인데 jsp 태그가 잘못 되었을 때 뜬다.


<c:forEach items= ${pageUpdater } var="pk" > <a href="/data?page=${pk.value }">${pk.key }</a> </c:forEach>


이 부분이 오류의 원인이었는데 pageUpdater가 앞뒤로 ""가 있지 않다.


<c:forEach items= "${pageMap2 }" var="pk" > <a href="/data?page=${pk.value }">${pk.key }</a> </c:forEach>


이렇게 바꾸고 나서야 오류가 사라졌다. 물론 이건 어디까지나 예제일 뿐이고, 실제로는 다양하게 태그를 잘못 사용하였을 경우에 발생할 수 있는 오류다.