阅读了这里的答案,并对这个问题进行了进一步的研究之后,我得出了以下结论:
- 您可以序列化对象,然后在随附的JSP中反序列化它们。不喜欢这样做,因为它会使代码更复杂(您传入的每个对象都必须可序列化,等等)
- 您可以使用标签库。不喜欢这样做,因为我觉得它们的作用与JSP包含文件不同
- 您可以在请求范围内定义变量,这将使变量可用于随附的JSP。对此并没有太大的兴趣,因为它没有显示程序员的意图(将值传递到所包含的页面,仅用于此目的)。
- 确实没有(我可以找到)实现我想要的东西的实现,但是可能是通过自定义标签构建的东西。
我做了一些工作,将代码组合在一起以实现所需的内容,然后将其放在sourceforge上。它允许您以我描述的方式指定输入:
<inc:include page="normal.jsp"> <inc:param name="param1" value="param1value" /> <inc:param name="param2" value="param2value" /> <inc:attrib name="attrib1" value="${attrib1value}" /> <inc:attrib name="attrib2" value="${attrib2value}" /> <inc:catch var="ex"> This block was not rolled up because there wasn't an error. Should never see this, but just in case, the exception was: ${ex.message} </inc:catch></inc:include>(目前)唯一的问题是,我将属性添加到请求范围中,然后才包含页面,然后在之后将其删除(如果已经存在,则将其重置)。相反,我想做的是包装请求对象,并覆盖属性方法以自动包括传入的值…我仍在努力。



