2016-11-19 93 views
0

我有兩個文件,一個是前端login.jsp和後端loginUser.java。我正在嘗試從loginUser.java獲得boolean。但是,出現了一個錯誤java.lang.IncompatibleClassChangeError。我不知道爲什麼這會出現。我怎樣才能解決這個錯誤?謝謝。如何解決 - java.lang.IncompatibleClassChangeError?

這裏是我的 '的login.jsp' 的代碼:

try{ 
      out.println("HT"); 
        login.LoginUser user = new login.LoginUser(id,pwd); 
        boolean login_success = user.isLogin(); <---This line have error. 
        //int role_id = user.get_role_id();     
        if (login_success){ 
          out.println("Login Success"); 
          // out.println(user.get_role_id().toString()); 

%> 
<script> 
    setTimeout(function() { 
       window.location.href = "control_panel.jsp"; //will redirect to your blog page (an ex: blog.html) 
     },2000); 
</script> 
<% 
    } 
    else{ 
     out.println("Login Failed"); 

%> 

這裏是我的 'loginUser.java' 的代碼:

public class LoginUser { 

private String username,password; 
public boolean login_success; 
public int role_id; 



public LoginUser(String username,String password){ 
    this.username=username; 
    this.password=password; 
    this.login_success=false; 
    this.role_id = 0; 
} 

public boolean login(){ 
    db.DataConnect conn = new db.DataConnect(); 
    conn.connect(); 

    ResultSet login_result; 
    String sql_statement = "SELECT COUNT(*) AS user_found, role_id FROM t_user WHERE user_name = '" + this.username + "' AND password = '" + this.password + "'"; 
    System.out.println(sql_statement); 
    try{ 
     login_result = conn.select(sql_statement); 
     if(login_result.next()){ 
      if(login_result.getInt("user_found") == 1){ 
       login_success = true; 
       role_id = login_result.getInt("role_id"); 
      } 
     } 
    } catch (Exception e) {System.out.println(e);} 
    conn.close(); 

    return login_success; 
} 

public boolean isLogin(){ 
    return true; 
} 


} 

然而,當我改了行boolean login_success = user.isLogin();boolean login_success = user.login();,錯誤不會出來。

回答

0

由於errror明確表示,類文件是不兼容,則可以通過重新編譯源文件修復該問題,然後添加到服務器類路徑。

當某個類 的定義發生不兼容的類更改時拋出。目前執行方法所依賴的某個類的定義已經改變。