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

Java Struts 2中静态包含页面的参数传递,java,jsp,struts2,parameter-passing,ognl,Java,Jsp,Struts2,Parameter Passing,Ognl,我有一个静态包含JSP的父文件 <%@include file="test.jsp" %> 在包含的文件中,我想使用Struts2标记访问父JSP的变量 请告诉我是否有可能或者我是否应该选择动态包含。您不能访问变量,但可以使用OGNL从值堆栈访问变量。请参阅以了解有关Struts中变量的更多信息以及如何使用它们 除了上面给出的示例和描述之外,自WebWork1.x以来,EL中还有一些主要的变化。最大的问题是,不再使用正斜杠/访问属性,而是使用点访问属性。另外

我有一个静态包含JSP的父文件

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

在包含的文件中,我想使用Struts2标记访问父JSP的变量


请告诉我是否有可能或者我是否应该选择动态包含。

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

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

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

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

注意:由于不会创建valuestack,因此无法通过
标记在呈现页面中访问提供给包含页面的任何附加
参数。但是,您可以通过
HttpServletRequest
对象在servlet中访问它们,或者通过scriptlet从JSP页面访问它们

如何访问参数

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



有多个父jsp文件正在使用test.jsp。现在,为了填充公共变量,一个使用expression标记,另一个从请求对象(在两个不同的父jsp中)获取它。那么,在这种情况下,是否有必要将父jsp中变量的值作为参数传递?不,不是。如果需要,您不能传递参数。那么如何进行呢?另外,它与s:include不兼容,包含的文件有很多错误。请发布错误并澄清您的问题,不清楚您在问什么。
<s:include value="test.jsp"/>