タイルでストラット 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>
ありがとうございました
受け入れられた答えに触発されて、次の解決策を思いつきました
タイル定義で定義されたページには、次のものがあります
<% String destAttr=(String)request.getAttribute("dest"); %>
<jsp:include page="<%=destAttr%>" flush="true" />
アクションクラスでは(私は怠け者だったので)、次のものがあります
request.setAttribute("dest", "landingB.jsp");
そして、それはうまくいきました。