2013-08-28 62 views
1

所以,我有兩個JSP頁可以說first.jsp和second.jsp
現在在頁first.jsp我有3個鏈接。
所有這三個環節都指的second.jsp一些查詢字符串可以說second.jsp S =一個打開頁面沒有查詢字符串錯誤在jsp

現在在第二頁我得到這個字符串「s」和顯示結果爲:?

String st=request.getParameter("s"); 

if(st.equals("one")){ 

} 
if(st.equals("two")) 
{ 

} 
if(st.equals("three")) 
{ 

} 

假設我點擊第一個鏈接,並達到second.jsp?s =一頁。
現在在URL中,如果我刪除查詢字符串並點擊回車,則顯示空指針異常錯誤。

我該如何解決這個錯誤?

回答

1

您必須在使用該對象之前檢查null。事情是這樣的:

if (st == null){ 
    return WhatEverYouWantToReturn; 
} 
else{ 
    if(st.equals("one")){ ... } 
    if(st.equals("two")){ ... } 
    if(st.equals("three")){ ... } 
} 

如果你調用一個空物體上.equals(),你會得到一個空指針異常。

+0

我已經嘗試過這種方法,但它不工作....... 它再次顯示了路線錯誤 '如果(st.equals(「1」)){ }' – AmanS

+0

你有爲了確保,如果st爲null,例如else結構,則不要調用st.equals。修改答案更加明確。 – Ope

+0

是啊,它的工作............ – AmanS