如何修复 - org.springframework.web.util.NestedServletException 异常

How to fix - org.springframework.web.util.NestedServletException exception

我有 jhipster 应用程序,mongodb.I 能够成功构建产品版本。当我 运行 prod 在 windows 中构建 war 文件时(与我的开发机器相同)它工作正常。当我将 war 部署到 linux 并尝试访问特定的 link 时出现以下异常

    org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.IncompatibleClassChangeError: Expected static field jdk.nashorn.internal.objects.Global.undefined

com.mastercard.rsc.web.rest.ResultssummaryResource.getAllResultssummariesByBuild(ResultssummaryResource.java:121)

下面是上述异常指向的代码。我想做的是,如果构建版本不为空,如果未提供构建版本,则按构建版本获取记录过滤器,然后获取所有记录。在我的请求中,构建版本不为空,我正在传递值 CurlVersion 并且匹配的记录在数据库中。

public ResponseEntity<List<ResultssummaryDTO>> getAllResultssummariesByBuild(Pageable pageable,@RequestParam(value = "buildversion", required = false) String buildversion) {
    log.debug("REST request to get a page of Resultssummaries by Build Version");
    System.out.println(buildversion);
    if (buildversion != undefined) {
        Page<ResultssummaryDTO> page = resultssummaryService.findByBuildversion(pageable, buildversion);
        HttpHeaders headers = PaginationUtil.generatePaginationHttpHeaders(page, "/api/resultssummaries");
        return new ResponseEntity<>(page.getContent(), headers, HttpStatus.OK);
    }
    else {
        log.debug("REST request to get a page of Resultssummaries");
        Page<ResultssummaryDTO> page = resultssummaryService.findAll(pageable);
        HttpHeaders headers = PaginationUtil.generatePaginationHttpHeaders(page, "/api/resultssummaries");
        return new ResponseEntity<>(page.getContent(), headers, HttpStatus.OK);
    }
}

我认为问题可能出在我检查构建版本的方式上,

if (buildversion != undefined)

但是为什么它在 windows(相同的产品构建 war)中起作用。当我调试时它也工作正常。不确定为什么当我在 linux 中 运行 时会出现问题。 不知道尝试什么选项完全空白。 你能帮忙解决这个问题吗?

您在 java 后端使用 java 脚本(使用 Nashorn)中的 undefined 值,尝试将 buildversionnull 进行比较并删除nashorn 导入。