JSP не рендерится должным образом в Tomcat - PullRequest
2 голосов
/ 10 декабря 2010

У меня есть страница JSP, работающая в Tomcat, которая не отображается должным образом.Вот как выглядит helloworld.jsp:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="cms-taglib" prefix="cms" %>
<html>
  <head>
    <title>${content.title}</title>
  </head>
  <body>
    <cms:mainBar
       dialog="my-page-properties-dialog"
       label="Page Properties"
       adminButtonVisible="true"/>
    <h1>${content.title}</h1>
    <p>Hello Magnolia World !</p>

    Current time: <%= new java.util.Date() %>
    <%-- JSP Comment --%>

  </body>
</html>

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

<% @ page contentType = "text / html; charset = UTF-8 "language =" java "%> <% @ taglib uri =" cms-taglib "prefix =" cms "%> Привет, мир магнолий!

Привет, мир магнолий!Текущее время: <% = new java.util.Date ()%> <% - JSP Comment -%>

Короче говоря, это выглядит как выражение $ {content.title}оценивается и отображается нормально, но все остальное, например, директивы страницы, другие выражения JSP и комментарии JSP - нет.

Я использую CMS, поставляемую с Tomcat, но примеры шаблонов JSP из дистрибутива выглядят хорошо.Я полагаю, что-то не так с кодом, который я написал выше.

Обновление: Я исправил закрытый тег для выражения даты и комментария.Однако директивы страницы не анализируются.

Ответы [ 4 ]

1 голос
/ 11 декабря 2010

Я нашел проблему.Это глупая ошибка с моей стороны.Несмотря на то, что я исправил правильный синтаксис JSP и имел расширение jsp, мне нужно было указать движку CMS явно отображать этот шаблон как JSP.Спасибо всем, что поймали мою синтаксическую ошибку, хотя.Полагаю, это стоит учитывать при работе с другими фреймворками.

1 голос
/ 10 декабря 2010

Java-скрипт <%= new java.util.Date() % также не закрывается должным образом (<%= new java.util.Date() %>), плюс, как указано в gigadot, <%-- JSP Comment --% не закрывается должным образом <%-- JSP Comment --%>.

С уважением,

1 голос
/ 10 декабря 2010

Я думаю, что есть проблема с вашим комментарием JSP.

Это должно выглядеть так, как показано ниже. Вы не используете IDE для разработки своего JSP? Ваша IDE должна сообщать вам о синтаксической ошибке.

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="cms-taglib" prefix="cms" %>
<html>
  <head>
    <title>${content.title}</title>
  </head>
  <body>
    <cms:mainBar
       dialog="my-page-properties-dialog"
       label="Page Properties"
       adminButtonVisible="true"/>
    <h1>${content.title}</h1>
    <p>Hello Magnolia World !</p>

    Current time: <%= new java.util.Date() %>
    <%-- JSP Comment --%>

  </body>
</html>
0 голосов
/ 10 декабря 2010

Обычно мы видим код, отображаемый в браузере, когда файл не распознается анализатором, т.е. расширение файла не добавляется в список анализатора.

Обычно tomcat имеет эту конфигурацию в файле web.xml в папке / conf.

Кроме того, если вы используете какой-либо текстовый редактор для кода, убедитесь, что вы сохраняете только с расширением .jsp, а не .jsp.txt, случайно!

...