0

我正在编写一个自定义标记库(1.2),其中包含循环标记和嵌套标记。有谁知道在第一个循环标记内是否有办法知道稍后在 JSP 中是否有更多相同的循环标记出现?

例子 :

<tt:myLoopTag>
    <%--  
       Normally, if "myLoopTag" was the only one tag in the JSP, 
       I would do some stuff in the doEndTag method
    --%>
</tt:myLoopTag>

...
 
<tt:myLoopTag>
    <%--
       But I have a second "myLoopTag" here, so I would like to do
       some stuff in the doEndTag method of this tag, not in the first one
    --%>
</tt:myLoopTag>

希望我足够清楚..

注意:不幸的是,我认为这篇文章对我没有用......

谢谢 !

4

1 回答 1

0

我认为这不太可能。如果您查看为 JSP 页面(例如,在 tomcat/work 中)生成的 Java 代码,您就会明白原因。

JSP 页面被编译成 Servlet,它们按顺序写入 JspWriter 流。为了使您尝试做的事情成为可能,Java 代码必须能够“提前”查看稍后将在 Servlet 中执行的代码,或者需要追溯更改已经写入JspWriter 流。从技术上讲,其中一个或另一个可能是可行的,但如果是的话,我怀疑它会涉及很多黑客行为。

值得考虑为什么需要这样做。如何发布您的实际目标的详细信息,看看是否有人可以提出替代方法?

于 2012-09-21T11:20:39.647 回答