欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ajax請(qǐng)求返回的數(shù)據(jù)看不到回調(diào)函數(shù)沒(méi)有執(zhí)行也沒(méi)報(bào)錯(cuò)

 更新時(shí)間:2014年01月23日 15:47:28   作者:  
ajax請(qǐng)求返回的數(shù)據(jù)看不到回調(diào)函數(shù)沒(méi)有執(zhí)行,哪里都沒(méi)有報(bào)錯(cuò),有類似情況的朋友可以參考下本文
項(xiàng)目用的是ssh,使用jquery的$.post訪問(wèn)struts2的Action,哪里都沒(méi)有報(bào)錯(cuò),可就是沒(méi)有結(jié)果。

現(xiàn)在$.post要返回保存著權(quán)限的集合Collection<Privilege>,權(quán)限類Privilege和用戶類User相互關(guān)聯(lián),也就是Privilege里使用set集合保存著擁有這個(gè)權(quán)限的用戶Set<User>,用戶User里也使用set集合保存著用戶有的權(quán)限Set<Privilege>。數(shù)據(jù)都到action里了,但是回調(diào)函數(shù)沒(méi)有執(zhí)行,并且使用瀏覽器調(diào)試也沒(méi)看到返回的數(shù)據(jù),最后找了半天,原因如下:

jquery在解析返回的Collection<Privilege>集合時(shí),看到里面有一個(gè)Set<User>,就會(huì)去得到集合中的數(shù)據(jù),但是Collection<Privilege>是service里的一個(gè)方法返回的,而這個(gè)時(shí)候spring的事務(wù)已經(jīng)結(jié)束,也就不會(huì)查到Set<User>中的數(shù)據(jù)。jquery解析空的集合就會(huì)出錯(cuò),所以得不到數(shù)據(jù)。

解決辦法:在Privilege里的getUser()方法加上這個(gè)注解@JSON(serialize=false),這樣jquery在解析的時(shí)候就會(huì)忽略這個(gè)集合中的數(shù)據(jù)。當(dāng)然,如果數(shù)據(jù)要用到,那就要在service中把這些數(shù)據(jù)先查到,放到集合中。

相關(guān)文章

最新評(píng)論