Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.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
仅使用JSP编辑bean_Jsp - Fatal编程技术网

仅使用JSP编辑bean

仅使用JSP编辑bean,jsp,Jsp,我正在使用servlet和JSP(无其他框架)编写一个小型web应用程序 有一个页面显示数据库中的所有组。可以通过按下一个按钮来编辑条目,该按钮将重定向到页面“editGroup?id=1”。因此,目标serlvet使用提供的id查找ToGroup,用该bean填充请求,并转发到JSP页面: <form action="addGroup.html" method="post"> Group name : <input type="text

我正在使用servlet和JSP(无其他框架)编写一个小型web应用程序

有一个页面显示数据库中的所有组。可以通过按下一个按钮来编辑条目,该按钮将重定向到页面
“editGroup?id=1”
。因此,目标serlvet使用提供的id查找ToGroup,用该bean填充请求,并转发到JSP页面:

        <form action="addGroup.html" method="post">
            Group name : <input type="text" name="name" value="${group.name }"/><br /> 
            Group description : <input type="text" name="description" value="${group.description }"/><br /> 
            Group roles :
            <c:forEach var="role" items="${roles}">
                <input type="checkbox" name="roles_id" value="${role.id}" />${role.name}<br />
            </c:forEach>
            <input type="submit" value="Submit">
        </form>

组名:
组描述:
组角色: ${role.name}
问题是:如何预先选择已附加到组的角色? 组的bean有一个bean角色列表。该请求还设置了一个属性,用于存储所有可用角色的列表

因此,在循环内部,我需要检查该角色是否已附加到已编辑的组


请帮助。

经过一些调查,我在以下方面找到了解决方案:


通过在EL中使用条件运算符,可以去掉整个
,最终得到一个
<c:forEach var="role" items="${roles}">
    <c:choose>
        <c:when test="${group.roles.contains(role)}">
            <input type="checkbox" name="roles_id" value="${role.id}" checked="checked"/>${role.name}
        </c:when>
        <c:otherwise>
            <input type="checkbox" name="roles_id" value="${role.id}"/>${role.name}
        </c:otherwise>
    </c:choose>
</c:forEach>
<c:forEach var="role" items="${roles}">
    <input type="checkbox" name="roles_id" value="${role.id}" ${group.roles.contains(role) ? 'checked' : ''}/>${role.name}      
</c:forEach>