【问题标题】:How to solve - java.lang.IncompatibleClassChangeError? [duplicate]如何解决 - java.lang.IncompatibleClassChangeError? [复制]
【发布时间】:2017-04-03 02:48:37
【问题描述】:

我有两个文件,一个是前端login.jsp和后端loginUser.java。我正在尝试从loginUser.java 获取boolean。但是,出现错误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(); 时,错误不会出现。

【问题讨论】:

    标签: java compiler-errors incompatibletypeerror


    【解决方案1】:

    由于错误清楚地表明类文件不兼容,您可以通过重新编译源文件然后添加到服务器类路径来解决此问题。

    当某个类发生不兼容的类更改时抛出 定义。一些类的定义,当前 执行方法取决于,已经改变了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-08-08
      • 2022-10-17
      • 2018-12-24
      • 2020-02-07
      • 2021-08-21
      • 2021-12-28
      • 2021-09-24
      相关资源
      最近更新 更多