【问题标题】:Syntax Error in my JSP Eclipse我的 JSP Eclipse 中的语法错误
【发布时间】:2016-05-15 07:47:29
【问题描述】:

为什么我的 JSP 文件中有这个错误

我的 JSP:

错误信息:

语法错误,插入“}”完成MethodBody

【问题讨论】:

  • 尝试给出 doctype 的完整路径,如下所示:ttp://www.w3.org/TR/html4/strict.dtd" rel="nofollow" target="_blank">w3.org/TR/html4/strict.dtd">
  • 请发布文字,而不是图片。

标签: java eclipse jsp struts


【解决方案1】:

Eclipse 对 JSP 的解析不正确。它对一些没有<script> 标记的javascript 代码使用的花括号进行了不当处理。

<script> 标签应放在<head><body> 标签内。

JSP 文件被编译成一个 servlet。如果您在 JSP 页面中使用 scriptlet 声明方法,则方法主体以 { 打开并应以 } 关闭,但在代码中的某个位置您可能会找到 /*}*/,或者更糟糕的是缺少 <%}%>。此类错误的示例(Java 代码中的冗余};)您可以找到here

要解决这个问题和其他可能由 JSP 中的意大利面条代码引起的错误,推荐的方法是不使用 scriptlet 并将 Java 代码移动到 servlet。 Struts 是 MVC 框架,它为呈现 JSP 页面提供了附加的 servlet 特性。您必须将 Java 代码从 JSP 页面移动到 Struts 控制器并通过 JSTL、OGNL 等表达式语言访问它。返回 JSP 页面作为动作/控制器执行/方法调用的结果/转发。您还可以在呈现页面时直接调用模型/控制器的方法。此行为超出了使用 MVC 模式的范围。

如果您在开发 Web 应用程序时需要更多关于关注点分离的信息,尤其是有关如何避免在 JSP 中使用 Java 代码的信息,请参阅How to avoid Java code in JSP files

【讨论】:

    猜你喜欢
    • 2012-07-06
    • 2017-05-29
    • 1970-01-01
    • 1970-01-01
    • 2017-08-23
    • 2014-03-13
    • 1970-01-01
    • 2014-01-20
    • 1970-01-01
    相关资源
    最近更新 更多