java - JSP 在 Tomcat 中无法正确呈现

标签 java jsp tomcat magnolia

我有一个在 Tomcat 中运行的 JSP 页面,该页面无法正确呈现。这是 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" %> Hello Magnolia World!

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

简而言之,似乎只有表达式 ${content.title} 被评估并渲染得很好,但其他所有内容(例如页面指令、其他 JSP 表达式和 JSP 注释)却没有。

我使用的是 Tomcat 附带的 CMS,但该发行版中的 JSP 模板示例看起来不错。我认为我上面编写的代码有问题。

更新:我修复了日期表达式和评论的结束标记。但是,页面指令并未被解析。

最佳答案

我认为你的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>

关于java - JSP 在 Tomcat 中无法正确呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4412623/

相关文章:

java - 禁用 intellij 编译器错误

java - MDC(映射诊断上下文)支持 JUL(Java.util.Logging)

jquery - 将 JSON 从操作类传递到 JSP,而不在 struts 中使用 Ajax

java - 条件检查 c :if always fails

java - JSTL 中的 HashMap 键检查

java - 在 Matlab 中捕获 Java 异常

java - NullPointerException 运行时错误

java - 如何防止 Spring Boot/Tomcat (Java8) 进程被 OOM 杀死?

java - Spring Boot或者Tomcat缓存静态资源,每次刷新都得重新构建

deployment - tomcat删除爆炸的webapps