確定這裏敲我的頭撞牆的最後2天爲我的驗證信息將在JSP不輸出雖然驗證顯然是發生了......的Struts 2.5:確認發生,但沒有消息顯示
我有設置爲必需的字段簡單的驗證通過一個動作-validation.xml中
<validators>
<field name="firstname">
<field-validator type="requiredstring">
<message>First name is required</message>
</field-validator>
</field>
</validators>
Action類延伸ActionSupport的和接口ServletRequestAware,製備的,模型驅動
執行,製備和驗證方法已全部被內重寫的動作類和它的配置是
<package name="main" namespace="/" extends="struts-default">
<action name="myform" class="com.uk.MyFormAction">
<interceptor-ref name="store">
<param name="operationMode">STORE</param>
</interceptor-ref>
<interceptor-ref name="defaultStack" />
<result name="update">s2/user.jsp</result>
<result name="input">s2/user.jsp</result>
</action>
</package>
無論出於何種原因從validation.xml文件將在
<s:if test="hasActionErrors()">
<s:actionerror />
</s:if>
<s:textfield name="firstname" />
有頁面上的其他領域我的JSP中不輸出任何東西,我驗證只是試圖讓這個先工作。我已經添加了攔截器存儲區,它與type =「redirectAction」沒有區別,但是當它被添加到我的輸入結果中時,我在驗證和準備提交操作的方法之間會出現無限循環...
我確信實際的配置是正確的。當該字段存在時,提交會正確地進行,但當它爲空時,struts會重定向回JSP,但不會提供錯誤消息。
我現在完全沒有什麼可能是錯誤的想法,有什麼建議嗎?
編輯:順便說一句,如果我添加addActionError()viamy驗證功能,它正確地顯示在頁面上,但同樣缺少的validation.xml消息(也不應該)
而且struts.ui.theme=simple
正在使用
最近的帖子我可以發現,涉及到我的問題可以是found here但是,攔截器的郵件似乎並沒有存儲或攔截我的郵件......我試圖通過打印getActionErrors集合的大小來輸出ActionErrors的數量在我的執行和驗證函數中返回0 ...我不確定是否應該返回validation.xml錯誤,如果工作correctl Ÿ
如果您使用默認主題,則會顯示驗證消息。請參閱[此答案](https://stackoverflow.com/a/15496272/573032)。 –
@羅曼哥抱歉,這對我沒有任何意義? Post似乎沒有引用任何主題,我的消息被寫入validation.xml。我嘗試刪除我的struts.properties,它把它設置爲默認(xhtml?),並沒有消息仍然出現。默認情況下,我的表單元素周圍的各種HTML我不想... –
嗯,這對別人有意義,我不知道爲什麼你不能得到它。好的,因爲你的問題太廣泛了,我不能給你一個有效的答案,所以如果你有問題,你可以自己發佈。 –