参数传递为Struts 2中静态包含的页面

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了参数传递为Struts 2中静态包含的页面相关的知识,希望对你有一定的参考价值。

我有一个父文件,我的JSP静态包含在其中。

<%@include file="test.jsp" %>

在包含的文件中,我想使用Struts2标记访问父JSP的变量。如果有可能或者我应该选择动态包括,请告诉我。

答案

您无法访问变量,但可以使用OGNL从值堆栈访问变量。请参阅OGNL Basics以了解有关Struts中的变量以及如何使用它们的更多信息。

除了上面给出的示例和描述之外,自从WebWork 1.x起,EL中有一些重大变化。最大的一个是不再使用正斜杠/访问属性,但使用点.。此外,我们现在使用..而不是使用[n]遍历堆栈,其中n是一些正数。最后,在WebWork 1.x中,可以使用@foo访问特殊命名对象(请求范围属性准确),但现在使用#foo访问特殊变量。但是,重要的是要注意#foo不访问请求属性。因为XWork不是仅为Web构建的,所以没有“请求属性”的概念,因此#foo仅仅是对除了根之外的OgnlContext中的另一个对象的请求。

要动态包含JSP内容,请使用s:include标记

包含servlet的输出(servlet或JSP页面的结果)。

注意:提供给包含页面的任何其他params都无法通过<s:property...>标记在呈现的页面中访问,因为不会创建任何valuestack。但是,您可以通过HttpServletRequest对象在servlet中访问它们,也可以通过scriptlet从JSP页面访问它们。

如何访问参数

参数作为请求参数传递,因此使用${param.ParamName}表示法来访问它们。不要使用属性标记来访问包含文件中的参数。

<s:include value="test.jsp"/>

以上是关于参数传递为Struts 2中静态包含的页面的主要内容,如果未能解决你的问题,请参考以下文章

Struts2标记中的HTML标记

struts2怎样获取AJAX post请求传递的数据

作业2

两个html的页面之间怎么传递参数啊

如何将 Struts 2 动作类中的 InputStream 值传递给 JSP 页面中的 Ajax 并将该值转换为 JSON 数组

struts2和springmvc有啥区别