java—调用函数时参数丢失

p3rjfoxz  于 2021-07-08  发布在  Java
关注(0)|答案(1)|浏览(573)

我有件怪事。当我从服务中调用函数时,服务丢失了所有参数。我不知道什么时候,为什么。
调试说当参数进入类中时,没有参数,然后什么都没有。我在另一个服务中做了一个类似的功能,它可以工作。真的很奇怪。
外观(打印):
c、 f.timesheet.web.rest.appuserresource enter:getallappusersbycompany(),参数[s]=[1,appusercriteria{},页面请求[number:0,size 20,sort:undefined:desc,id:asc]]
c、 f.timesheet.web.rest.appuserresourcerest请求按公司id获取appusers:1
c、 f.timesheet.service.appuserservice enter:findbycompany(),参数[s]=[1,页面请求[number:0,size 20,sort:undefined:desc,id:asc]]
c、 timesheet.service.appuserservice:请求通过公司id获取所有appusers!!!!!!!!!!!!!!!!!!!!!id丢失的问题
findbycompany()中出现异常,原因为'java.lang.illegalargumentexception:org.hibernate.queryexception:无法解析属性:未定义的:com.freemind.timesheet.domain.appuser[从com.freemind.timesheet.domain.appuser appuser中选择appuser,其中appuser.id=?1 order by appuser.undefined desc,appuser.id asc]'
代码如下:
应用程序用户资源:

@GetMapping("/app-users/company/{id}")//tayo
public ResponseEntity<List<AppUserDTO>> getAllAppUsersByCompany(@PathVariable Long id,Pageable pageable) {
    log.debug("REST request to get AppUsers by company id: {}", id);
    Page<AppUserDTO> page = appUserService.findByCompany(id,pageable);
    return ResponseEntity.ok().body(page.getContent());
}

应用程序用户服务

public Page<AppUserDTO> findByCompany(Long id,Pageable pageable){//?
        log.debug("Request to get all AppUsers by company id", id);
        return  appUserRepository.findByCompany(id,pageable).map(appUserMapper::toDto);
    }

查询:

@Query("select appUser from AppUser appUser where appUser.id=?1")
    Page<AppUser> findByCompany( Long id, Pageable pageable);

你知道吗?
谢谢你。

mzmfm0qo

mzmfm0qo1#

你的调试语句是错误的

log.debug("Request to get all AppUsers by company id", id);

应该是

log.debug("Request to get all AppUsers by company id {}", id);

错误信息显示

order by appUser.undefined desc, appUser.id asc

所以问题是orderby语句,它没有定义。似乎您的分页请求在客户端的格式不正确,这是您应该调查的问题。

相关问题