gpt4 book ai didi

java - JspFragment.invoke 到底做了什么?

转载 作者:太空宇宙 更新时间:2023-11-04 08:25:18 25 4
gpt4 key购买 nike

标题中的几乎所有内容。文档并不清楚这次调用的后果。

我的特殊情况是,调用此方法时参数传入 null,并且前后都有代码。我不明白这个电话的目的...
请注意,上下文是一个扩展 SimpleTagSupport 的类(我正在做 taglib 的东西)。

感谢您的指点。这是javadoc:

调用

public abstract void invoke(java.io.Writer out)
throws JspException,
java.io.IOException

Executes the fragment and directs all output to the given Writer, or the JspWriter returned by the getOut() method of the JspContext associated with the fragment if out is null.

Parameters:
out - The Writer to output the fragment to, or null if output should be sent to JspContext.getOut().
Throws:
JspException - Thrown if an error occured while invoking this fragment.
SkipPageException - Thrown if the page that (either directly or indirectly) invoked the tag handler that invoked this fragment is to cease evaluation. The container must throw this exception if a Classic Tag Handler returned Tag.SKIP_PAGE or if a Simple Tag Handler threw SkipPageException.
java.io.IOException - If there was an error writing to the stream.

最佳答案

嗯,它允许标记接收 JSP 片段(标记的主体),以便在标记需要时执行。例如,您可以设计一个 if 标记,它接收条件参数并具有标记主体。如果条件为假,则标签不会执行任何操作。如果为 true,则标记将调用该片段。 loop 标记可以根据其 iterationCount 参数的要求多次调用其片段(执行其主体中的 JSP 代码)。

由于片段可能用于生成一些 HTML 代码以包含在响应中,因此该方法的 out 参数是生成片段输出的位置。例如,如果您想对片段生成的内容进行后处理,而不是让片段直接写入 JSP 编写器,您可能需要传递另一个编写器。

关于java - JspFragment.invoke 到底做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8681246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com