java異常java.lang.reflect.InvocationTargetException 並且同時帶有空指針異常


java.lang.reflect.InvocationTargetException  並且同時帶有空指針異常,

該錯誤來源於,實現用戶自動登錄功能時:登錄界面,當輸入用戶名和密碼后,沒有勾選自動登錄按鈕,結果在UserServlet中實現方法時,只要有getParameter(“autologin”);就報錯,

分析:用過濾器實現對getParameter方法包裝設計增強時,沒有加入空指針異常判斷。所以在servlet方法中使用自定義的getParameter時,當用戶沒有勾選自動登錄按鈕,獲取到的是空。所以會報此錯誤。

解決:在對getparameter方法包裝設計進行功能增強時,加入對獲取的參數進行空指針判斷。或者把異常拋掉一個大異常catch(Exception e){}

class MyRequest extends HttpServletRequestWrapper {

    public MyRequest(HttpServletRequest request) {

        super(request);

    }

    @Override

    public String getParameter(String name) {

 

        String word = super.getParameter(name);

        try {

            if (word == null) {

                return null;

            }

            word = new String(word.getBytes("ISO-8859-1"), "UTF-8");

        } catch (UnsupportedEncodingException e) {

            e.printStackTrace();

        } catch (Exception e) {

            e.printStackTrace();

        }

        return word;

    }}

                                          異常代碼截圖:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM