Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.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 Primefaces:转换错误设置值';管理员';对于';空转换器';_Java_Jsf_Primefaces - Fatal编程技术网

Java Primefaces:转换错误设置值';管理员';对于';空转换器';

Java Primefaces:转换错误设置值';管理员';对于';空转换器';,java,jsf,primefaces,Java,Jsf,Primefaces,我在这段代码中遇到了错误,我被困在这一点上。请帮帮我 代码中包括selectedRole、allRolesList的getter和setter java代码 私有字符串selectedRole; List allRolesList=new ArrayList(); 如果(!roleList.isEmpty()){ isRolesPresent=true; for(用户角色ur:roleList){ 添加(ur.getRoleName().toString()); /*打印所有角色列表结果:[管理

我在这段代码中遇到了错误,我被困在这一点上。请帮帮我

代码中包括selectedRole、allRolesList的getter和setter

java代码

私有字符串selectedRole;
List allRolesList=new ArrayList();
如果(!roleList.isEmpty()){
isRolesPresent=true;
for(用户角色ur:roleList){
添加(ur.getRoleName().toString());
/*打印所有角色列表结果:[管理员]*/
系统输出打印(“所有角色列表”+所有角色列表);
}
}否则{
isRolesPresent=false;
}
基本面代码:


{usersDAO.selectedUser}
显然不是
字符串类型。JSF不知道如何将
字符串
转换为
用户
,因为没有为
用户
类型注册转换器,因此出现了错误消息

您通常需要为此创建一个自定义的
转换器
,如中所述,但基于给定的Java代码,您实际上需要
{usersDAO.selectedRole}
,它已经是
字符串
类型。因此,您不需要创建自定义的
转换器




顺便说一下,名称中带有“DAO”的托管bean非常奇怪。您确定没有在单个类中混合概念或紧密耦合不同的职责(这将导致较差的可重用性/可维护性)?

DAO类通常不是JSF管理的bean。它通常是JSF托管bean的属性。DAO类通常是包含所有数据库交互代码的类,例如
find()
list()
create()
save()
delete()
,等等。这绝对不能用作JSF管理的bean。
private String selectedRole;


List<String> allRolesList = new ArrayList<String>();

    if(!roleList.isEmpty()){
        isRolesPresent = true;
        for(UserRole ur : roleList){
            allRolesList.add(ur.getRoleName().toString());

/* printing allRolesList results: [admin] */

System.out.print("allRolesList "+allRolesList);

        }
    }else{
        isRolesPresent = false;
    }
        <p:selectOneMenu id="role" value="#{usersDAO.selectedUser}" effect="fade" required="true" 
                     requiredMessage="Role cannot be null">  
            <f:selectItems value="#{usersDAO.allRolesList}" />
        </p:selectOneMenu>