簡體   English   中英

在Spring Boot中返回Json對象,但顯示未定義

[英]Returning Json Object in Spring Boot but It is showing undefined

這是我的javascript函數的一部分,該函數正在調用控制器

$.post(filterServiceUrl, data, onFilterProductsSuccess, "json");

控制器成功調用

public @ResponseBody HomeLoanFilterServiceResponseDto filter(FilterModel model, ModelMap modelMap) {
    List<LoanDetailsDto> loans = new ArrayList<LoanDetailsDto>();
    LoanFilterServiceResponseDto response = new LoanFilterServiceResponseDto();
    response.setSuccess(true);
    response.setErrorMessage("");
    //Business Logic
    response.setLoans(loans);
    return response

}

得到響應后調用函數

function onFilterProductsSuccess(serviceResponse) { alert("serviceResponse.IsSuccess: "+ serviceResponse.isSuccess) };

該函數顯示警報框serviceResponse.IsSuccess: undefined

您不能直接訪問私有屬性。 您的方法應如下所示:

public boolean isSuccess(){
    return this.isSuccess;
} 

因此,如果您想檢查響應是否成功,則應添加()-調用訪問私有方法的public方法-

alert("serviceResponse.IsSuccess: "+ serviceResponse.isSuccess())

這是Response類。

    public class LoanFilterServiceResponseDto {
private boolean isSuccess;
private String errorMessage;
//private List<LoanDetailsDto> loans; //getteres & setters
 //

public boolean isSuccess() {
    return isSuccess;
}

public void setSuccess(boolean success) {
    isSuccess = success;
}

public String getErrorMessage() {
    return errorMessage;
}

public void setErrorMessage(String errorMessage) {
    this.errorMessage = errorMessage;
}
}

這是js方法。

 function onFilterProductsSuccess(serviceResponse) {
    alert("serviceResponse.IsSuccess: "+ serviceResponse.isSuccess())
       };

您的退貨實體是

HomeLoanFilterServiceResponseDto

,但實際上您會返回此

LoanFilterServiceResponseDto

嘗試換另一個班

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM