溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Struts2 Validation框架實(shí)例分析

發(fā)布時(shí)間:2022-01-11 11:41:44 來(lái)源:億速云 閱讀:135 作者:柒染 欄目:編程語(yǔ)言

這篇文章跟大家分析一下“Struts2 Validation框架實(shí)例分析”。內(nèi)容詳細(xì)易懂,對(duì)“Struts2 Validation框架實(shí)例分析”感興趣的朋友可以跟著小編的思路慢慢深入來(lái)閱讀一下,希望閱讀后能夠?qū)Υ蠹矣兴鶐椭?。下面跟著小編一起深入學(xué)習(xí)“Struts2 Validation框架實(shí)例分析”的知識(shí)吧。

一、Struts2 validation最開(kāi)始就給我一個(gè)大挫折,按照官方文檔做好了demo,為一個(gè)msg字段建立required檢驗(yàn),可運(yùn)行起來(lái)就是不攔截不檢驗(yàn)。那個(gè)汗呀~~~~,搞了N就才發(fā)現(xiàn)理解錯(cuò)誤,required是驗(yàn)證是否為null的,而在jsp頁(yè)面里面建立一個(gè)名為msg的input即使你什么也不寫(xiě)它也會(huì)給你傳第一個(gè)"",應(yīng)該使用的是requiredstring對(duì)msg檢驗(yàn)才是我的目的。之后就是認(rèn)認(rèn)真真把validation的幾個(gè)type的意思搞懂了

二、搞定了前面的原因,把input返回值也設(shè)定成了輸入頁(yè)面,檢驗(yàn)攔截成功了返回到了輸入頁(yè)面,然后就是不輸出該有的提示信息,把input換成s:textfield也不行。***原因是:我平時(shí)寫(xiě)Struts2 validation應(yīng)用都會(huì)把struts.ui.theme設(shè)置成simple,而這個(gè)主題是不會(huì)顯示錯(cuò)誤信息的。把這個(gè)去掉就行了,要不這樣也行

Xml代碼

< ?xml:namespace prefix = s / >< s:textfield theme="xhtml">< /s:textfield>

三  校驗(yàn)失敗后返回一個(gè)莫名其妙的頁(yè)面,這個(gè)真。。。。。     這個(gè)還是吃完晚飯一下子才醒悟過(guò)來(lái)的。我使用了struts2***的convention插件,校驗(yàn)失敗后會(huì)找input返回值,我并沒(méi)有顯式指定input頁(yè)面,所以convention插件會(huì)按照規(guī)則尋找actionName-input.jsp沒(méi)找到后就跑到actionName.jsp頁(yè)面去了,我說(shuō)他怎么老跑到默認(rèn)頁(yè)面去了呢,唉細(xì)節(jié)地方?jīng)]注意讓人給玩了。

四 、找到問(wèn)題后我才想起來(lái)一年前我也曾經(jīng)遇到過(guò)這個(gè)問(wèn)題,還寫(xiě)過(guò)一篇博客呢,不過(guò)早忘了,汗~~~~     這個(gè)問(wèn)題就是無(wú)論如何都會(huì)校驗(yàn)失敗,無(wú)論msg是否輸入了值。   原因很簡(jiǎn)單在action里msg字段我沒(méi)寫(xiě)get方法,所以validation攔截器永遠(yuǎn)得不到msg的值,所以永遠(yuǎn)校驗(yàn)失敗。

關(guān)于Struts2 Validation框架實(shí)例分析就分享到這里啦,希望上述內(nèi)容能夠讓大家有所提升。如果想要學(xué)習(xí)更多知識(shí),請(qǐng)大家多多留意小編的更新。謝謝大家關(guān)注一下億速云網(wǎng)站!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI