您好,登錄后才能下訂單哦!
這篇文章跟大家分析一下“Struts2 Validation框架實例分析”。內容詳細易懂,對“Struts2 Validation框架實例分析”感興趣的朋友可以跟著小編的思路慢慢深入來閱讀一下,希望閱讀后能夠對大家有所幫助。下面跟著小編一起深入學習“Struts2 Validation框架實例分析”的知識吧。
一、Struts2 validation最開始就給我一個大挫折,按照官方文檔做好了demo,為一個msg字段建立required檢驗,可運行起來就是不攔截不檢驗。那個汗呀~~~~,搞了N就才發現理解錯誤,required是驗證是否為null的,而在jsp頁面里面建立一個名為msg的input即使你什么也不寫它也會給你傳第一個"",應該使用的是requiredstring對msg檢驗才是我的目的。之后就是認認真真把validation的幾個type的意思搞懂了
二、搞定了前面的原因,把input返回值也設定成了輸入頁面,檢驗攔截成功了返回到了輸入頁面,然后就是不輸出該有的提示信息,把input換成s:textfield也不行。***原因是:我平時寫Struts2 validation應用都會把struts.ui.theme設置成simple,而這個主題是不會顯示錯誤信息的。把這個去掉就行了,要不這樣也行
Xml代碼
< ?xml:namespace prefix = s / >< s:textfield theme="xhtml">< /s:textfield> |
三 校驗失敗后返回一個莫名其妙的頁面,這個真。。。。。 這個還是吃完晚飯一下子才醒悟過來的。我使用了struts2***的convention插件,校驗失敗后會找input返回值,我并沒有顯式指定input頁面,所以convention插件會按照規則尋找actionName-input.jsp沒找到后就跑到actionName.jsp頁面去了,我說他怎么老跑到默認頁面去了呢,唉細節地方沒注意讓人給玩了。
四 、找到問題后我才想起來一年前我也曾經遇到過這個問題,還寫過一篇博客呢,不過早忘了,汗~~~~ 這個問題就是無論如何都會校驗失敗,無論msg是否輸入了值。 原因很簡單在action里msg字段我沒寫get方法,所以validation攔截器永遠得不到msg的值,所以永遠校驗失敗。
關于Struts2 Validation框架實例分析就分享到這里啦,希望上述內容能夠讓大家有所提升。如果想要學習更多知識,請大家多多留意小編的更新。謝謝大家關注一下億速云網站!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。