我正在使用带有瓷砖的 struts 1.1。
我有像这样定义的瓷砖
<definition name="cnmp.body.index" extends="cnmp.mainLayout" >
<put name="title" value="CNM Portal" />
<put name="bodytitle" value="Home" />
<put name="body" value="/00-CNM_Landing.jsp" />
</definition>
我希望能够在我的 java Action 类中设置 body 参数的值。我会从 ActionMapping 或 ActionForm 中得到什么来做到这一点?
public class TileForwardAction extends Action
{
public ActionForward execute(ActionMapping mapping, ActionForm arg1,
HttpServletRequest arg2, HttpServletResponse arg3) throws Exception
{
return mapping.findForward("theTile");
}
}
struts 配置文件看起来像
<action-mappings>
<action path = "/index"
type = "com.bellsouth.snt.cnmp.ui.action.TileForwardAction"
scope = "request"
input = "cnmp.body.index"
parameter= "theTile"
>
<forward name="theTile" path="cnmp.body.index"/>
</action>
谢谢
受公认答案的启发,我想出了以下解决方案
在 tile def 中定义的页面中,我有以下内容
<% String destAttr=(String)request.getAttribute("dest"); %>
<jsp:include page="<%=destAttr%>" flush="true" />
在动作课中(因为我很懒)我有以下
request.setAttribute("dest", "landingB.jsp");
它奏效了。