2012-06-13 58 views
0

在我的JSP頁面中,添加了標籤<jsp:include page="servletName" />。這裏servletName是HttpServlet Class,並且該類向Request對象添加一些屬性。然後,再次在jsp頁面中,檢索設置爲請求對象的值(已完成此操作以減少jsp頁面中的代碼行)。如何使用Struts執行「<jsp:include page =」servletName「/>」的任務

我想在Struts 2應用程序中這樣做。

我想調用一個操作類(類似於普通jsp應用程序中的<jsp:include />),然後該類將一些值設置爲Request對象(值堆棧)。那麼應該使用Struts標籤在jsp類中檢索這些值。

我該怎麼做?

另外,我該如何發送綁定到jsp頁面的請求參數並將其發送到動作類? here顯示了一些什麼,我想:

<s:action name="Login" flush="true" executeResult="true" namespace="/secure"/> 

但目前尚不清楚對我怎麼寫​​和struts.xml中和所使用的屬性。任何人都可以爲我清除它嗎?

回答

1

使用<s:action> tag

然而,我質疑這個需求,如果這種做法足夠頻繁以保證這一點,那麼可以考慮使用實現Preparable的基本操作類,並創建一個特定於應用程序的子類,以便爲需要自己準備的操作添加行爲。

IMO依靠視圖來添加它需要的對象是違反關注點分離。

+0

謝謝。你能否解釋一下如何使用

+0

該動作不會呈現任何內容 - 動作類返回的內容無關緊要。該配置看起來像任何動作配置。標籤文檔清楚地顯示了您正在討論的內容的示例 - 請首先查看文檔。 –

+0

謝謝MR戴夫。我提到它。並按照醫生的說法進行了嘗試。但是現在,頁面的內容會重複多次。 :(這裏在jsp中'在struts.xml中 <結果名稱=「成功」> /index.jsp '。 –

1

使用Struts IncludeAction之類的。

<jsp:include page=」/App1/legacyA.do」 /> 

<action path=」/legacyA」 
parameter=」/xoom/LegacyServletA」 
type=」org.apache.struts.actions.IncludeAction」 /> 
相關問題