亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

關于未登錄下單問題

我的OrderController中

//獲取登錄信息
Boolean?isLogin?=?(boolean)?httpServletRequest.getSession().getAttribute("IS_LOGIN");
System.out.println(isLogin.booleanValue());
if(isLogin?==?null?||?!isLogin.booleanValue()){
????throw?new?BussinessException(EmBusinessError.USER_NOT_LOGIN,"用戶還未登陸,不能下單");
}

如果沒有登陸,執行到第一句時程序就會直接終止,控制臺顯示空指針異常,而不會走下面那個USER_NOT_LOGIN異常,前端獲取到的errcode不是20003的USER_NOT_LOGIN,而是10002 UNKNOW_ERROR,這和老師的不一樣,該怎么解決

正在回答

4 回答

boolean只能是false和true,不能為空,如果強轉過去就會報空指針異常。所以一般都是使用Boolean包裝類的

0 回復 有任何疑惑可以回復我~

現在解決了嗎



0 回復 有任何疑惑可以回復我~

但是我的問題是? 它返回來的是一個null? 我直接就GAMEOVER了


0 回復 有任何疑惑可以回復我~
#1

慕娘0242551

返回null可能是sessionid不一致了(可以檢查login和createorder的sessionid是否一致),也就是跨域問題,如果程序按照老師編寫,可把google瀏覽器的SameSite by default cookies設置為disabled,但是最新的chrome已沒有這個設置了,可以換為舊版本
2021-06-01 回復 有任何疑惑可以回復我~

強轉成 Boolean,而不是 boolean

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

關于未登錄下單問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號