2012-10-18 82 views
2

我發現在使用Struts插件「config-browser」進行調試時,我的所有操作都有一個「默認位置」。像下面這樣的東西:什麼是Struts動作的「默認位置」(在config-browser中)?


Action information - list* 

Action name: list* 
Namespace: 
Action class: listAction 
Action method: {1} 
Parameters: 
Default location: /mysite/list*.action 

我想知道這是什麼「默認位置」是什麼意思? 我可以改變它嗎?我該如何改變它?

順便說一句:我已將web.xml中的支柱過濾器更改爲僅收聽/test/*/action/*。我不知道爲什麼它仍然說「默認位置」是/mysite/list*.action

+0

你在調試什麼?這是動作映射嗎? –

+0

我映射的行動,只是從來沒有聽說過這個「默認位置」的概念 – Leemax

+0

仔細閱讀我的答案。 –

回答

0

沒有這樣的概念「默認位置」。有「默認行動」。

通常,如果請求一個動作,並且框架無法將請求映射到動作名稱,則結果將是通常的「404 - 頁面未找到」錯誤。但是,如果您希望綜合操作處理任何不匹配的請求,則可以指定默認操作。如果沒有其他操作匹配,則使用默認操作。

如果你看ActionMapping類,你會發現它沒有location屬性。相反ServletDispatcherResultServletRedirectResult具有這樣的參數。所以,通過映射使用它可以找出最終的位置。

還有默認命名空間和默認類概念,在計算最終位置時提到。

此外,術語位置可被視爲路徑並映射到配置操作的配置文件。

+0

「默認位置」不是我「發明的」......它只是在網頁上顯示的時候使用了struts插件「config-browser」 – Leemax

相關問題