Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 困惑为什么在junit测试时得到classCastException_Java_Junit_Classcastexception - Fatal编程技术网

Java 困惑为什么在junit测试时得到classCastException

Java 困惑为什么在junit测试时得到classCastException,java,junit,classcastexception,Java,Junit,Classcastexception,我不明白为什么我会得到一个classCastException 这是我的密码: public RolesResponse findRoleByRoleNameTenant(RolesRequest rolesRequest) { RolesResponse rolesResponse = new RolesResponse(); List<Role> roleList = null; if (StringUtils.isNo

我不明白为什么我会得到一个classCastException

这是我的密码:

  public RolesResponse findRoleByRoleNameTenant(RolesRequest rolesRequest)
    {
        RolesResponse rolesResponse = new RolesResponse();
        List<Role> roleList = null;
        if (StringUtils.isNotBlank(rolesRequest.getTenantCode()) && null != rolesRequest.getRoleName())
        {
            roleList = (List<Role>) roleFunctionService.getRolesByRoleNameTenant(rolesRequest.getRoleName().toString(), rolesRequest.getTenantCode());

        }
        if (CollectionUtils.isNotEmpty(roleList))
        {

            rolesResponse.setRoles(roleList);
        }
        else
        {

            rolesResponse.setError(LayerContextHolder.getErrorObject());
        }

        return rolesResponse;
    }
在运行junit测试时,我得到classCastException:不能转换为java.util.list

它特别强调了这一点

roleList = (List<Role>) roleFunctionService.getRolesByRoleNameTenant(rolesRequest.getRoleName().toString(), rolesRequest.getTenantCode());
roleList=(List)roleFunctionService.getRolesByRoleNameTenant(rolesRequest.getRoleName().toString(),rolesRequest.getTenantCode());
  • 您说过
    getRolesByRoleNameTenant
    返回一个
    角色

  • 您说过异常发生在

    roleList = (List<Role>) roleFunctionService.getRolesByRoleNameTenant(...));
    
    roleList=(List)roleFunctionService.getRolesByRoleNameTenant(…);
    
  • 类强制转换异常告诉您不能将
    角色
    强制转换为
    列表


  • 基本上,要么您的
    findRoleByRoleNameTenant
    方法有缺陷,要么
    getRolesByRoleNameTenant
    的声明不正确。无论哪种方式,您都试图执行一个不会也无法工作的类强制转换。

    roleFunctionService.getRolesByRoleNameTenant()返回什么?@PreFragmaric在问题中更新您已经更新了
    findRoleByRoleNameTenant()
    ,仍然没有
    getRolesByRoleNameTenant()
    的代码。没有代码吗?或者更确切地说,只有这个@WebMethod公共角色getRolesByRoleNameTenant(字符串roleName,字符串tenant);}经典毫无理由地对这个问题置之不理。我根据请求上传了代码并简单地解释了我的问题,希望能在这个问题上得到一些帮助。经典的道奇索凯,不是我写的。刚刚被告知要进行单元测试。我会通知别人的,thakns
    roleList = (List<Role>) roleFunctionService.getRolesByRoleNameTenant(...));