2013-04-05 27 views
0

我寫了一個提交按鈕這樣的:如何在沒有表單的情況下將值傳遞給Struts 2中的某個操作?

<s:submit type="button" value="Delete" action="%{notesDeleteUrl}" theme="simple"/> 

而且我這樣定義的URL。

<s:url value="notesDeleteAction.action" id="notesDeleteUrl" > 
<s:param name="noteId"><s:propertyvalue="iNote" /> </s:param>         
</s:url> 

所以基本上,我沒有< S:我的JSP form>標籤,但我需要同時傳遞一個值,它調用與提交按鈕的動作。我得到這個錯誤。

  • 沒有爲與命名空間[/]和動作名稱[notesDeleteAction?noteId = 48]相關聯的上下文路徑[/ abc]映射的操作。

所以我明白,它無法解決因爲添加參數的行動,但我怎麼能發送這個值的行動?

+0

沒有表格提交是不合情理的。使用樣式化的鏈接。 – 2013-04-05 15:23:27

回答

0

你的錯誤與參數無關。 Struts的不知道如何處理URL/notesDeleteAction做

你需要在你的struts.xml文件中的行動:

<package name="yourpackage" namespace="/" extends="struts-default"> 
    <action name="notesDeleteAction" class="foo.YourClass"> 
    <result>somepage.jsp</result> 
    </action> 
</package> 

有2種方式來獲取參數類,foo.YourClass

一種方法是:

Map parameters = ActionContext.getContext().getParameters(); 

另一種方法是給你的類來實現org.apache.struts2.interceptor.ParameterAware

相關問題