2

我一直在嘗試做一個java項目。它使用Struts 2標籤。有一個按鈕更新無論何時它被點擊,它應該更新數據庫中的值。struts2讓我生氣

但我收到此錯誤:

No result defined for action com.comviva.im.ui.action.sysadmin.CUGAction and result input

回答

4

No result defined for action com.comviva.im.ui.action.sysadmin.CUGAction and result input

這意味着你缺乏的input結果映射爲這次行動在你的struts.xml

標準的工作流程

JSP -> Interceptor Stack -> Action

在達到Action之前正在破解,最有可能是由ConversionError Interceptor(例如。例如,發送一個字符串到一個整數),並且它甚至沒有到達該操作就返回。

瞭解更多關於Struts2 INPUT result: how does it work? How are conversion/validation errors handled?

當試圖回來,實在找不到哪裏去了。

所以,你必須定義一個input結果類型:

<action name="CUGAction" class="com.comviva.im.ui.action.sysadmin.CUGAction"> 
    <result name="success">/your.jsp</result> 
    <result name="input">/your.jsp</result> 
</action> 

然後在你的JSP with <s:fielderror />with <s:actionerrors />打印出的錯誤,並試圖找出發生了什麼。

+0

注意:從結果配置'同樣,如果沒有指定name屬性,框架會給它一個名稱「success」。http://struts.apache.org/2.x/docs/result-有關詳細說明,請參閱configuration.html –

+0

+1。 –

+0

我不會稱這是一個糟糕的做法,而是「智能默認值」。 :) –