Почему код Java в JSP генерирует ошибку? - PullRequest
1 голос
/ 11 января 2012

Я пытаюсь ввести код java в мой jsp, однако генерируется следующее исключение:

org.apache.jasper.JasperException: /Home.jsp(31,8) PWC6203: Scripting elements ( <%!, <jsp:declaration, <%=, <jsp:expression, <%, <jsp:scriptlet ) are disallowed

Мой jsp содержит оператор if и будет проверять данные.Если он совпадает, отображается некоторый html-код, в противном случае отображается другой код

<% String username = session.getAttribute("loggedIn").toString();
               String actual = "${message.message}";
               if(username.equals(actual)){%>
                <div style="background-color:#fff380;"> 
                ...
                </div>
            <%} else { %>
                <div> 
                ...
                </div>
            <%}%>

Кто-нибудь знает, почему генерируется этот тип ошибки, пожалуйста?большое спасибо

1 Ответ

2 голосов
/ 11 января 2012

Использование Sciptlet, вероятно, настроено как недопустимое (см. http://www.java -samples.com / showtutorial.php? Tutorialid = 548 ). И этот выбор был мудрым, потому что скриптлеты больше не должны использоваться в JSP. Используйте JSTL и EL:

<c:choose>
    <c:when test="${loggedIn == message.message}">
        ...
    </c:when>
    <c:otherwise>
        ...
    </c:otherwise>
</c:choose>

Более того, даже если scriplet был действительным, вы не можете использовать JSP EL внутри кода скриптлета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...