我正在尝试将HTML包含在java scriptlet方法中。伪代码示例:
<%! public void doSomething() {
%>
<p>Hello World</p>
<%
} %>
上面的示例不起作用,因为编译器认为该方法在声明后立即结束。
有替代方法吗?
答案 0 :(得分:3)
首先,你真的不应该使用scriptlet,特别是不应该在scriptlet中定义方法。
尽管如此,您也可以使用out.print()
打印HTML,甚至可以在scriptlet中定义的方法中打印HTML。您将遇到一个问题,即在声明块中您无法访问out
,除非您声明全局JspWriter并将其设置为您的scriptlet中的out
,如下所示:< / p>
<%!
JspWriter jout = null;
public void doSomething()
{
jout.print("<p>Hello World</p>");
}
%>
<%
jout = out;
doSomething();
%>