答案 0 :(得分:1)
Eclipse已经错误地解析了JSP。它使用了一些没有<script>
标记的javascript代码所使用的花括号。
<script>
标记应放在<head>
或<body>
标记内。
将JSP文件编译为servlet。如果使用scriptlet在JSP页面内声明方法,则方法体将使用{
打开,并应使用}
关闭,但在代码中可能会找到/*}*/
,甚至更糟糕的是<%}%>
。您可以找到here这样的错误示例(Java代码中的冗余};
。
要解决由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。