Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.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 h的设置值:从a中为每个h选择一个菜单_Java_Jsf 2_Jstl - Fatal编程技术网

Java h的设置值:从a中为每个h选择一个菜单

Java h的设置值:从a中为每个h选择一个菜单,java,jsf-2,jstl,Java,Jsf 2,Jstl,这是每个人迭代产品列表的唯一方法,我需要在下面的下拉列表中设置productGroupId <c:forEach items="${productgroup.productList}" var="product"> <h:selectOneMenu value="${product.appleProdgroupId}"> <f:selectItems value="#{displayProductsBean.productGroupListDropDown}

这是每个人迭代产品列表的唯一方法,我需要在下面的下拉列表中设置productGroupId

 <c:forEach items="${productgroup.productList}" var="product">

 <h:selectOneMenu  value="${product.appleProdgroupId}">
<f:selectItems value="#{displayProductsBean.productGroupListDropDown}"/>
</h:selectOneMenu>


我试过所有的组合,但都不起作用……有人能帮我一下吗?

不清楚你说的“它不起作用”到底是什么意思。在目前发布的代码中,我看到了至少3个可能的原因:

您的第一个问题是需要使用
{}
语法而不是
${}
语法,以便能够自动创建托管bean(如果它们还不在范围中)


第二个问题可能是
,但这取决于运行此代码的上下文。
即视图构建时间标记。如果上述方法不起作用,则需要使用


如果这仍然不起作用,那么您需要附加一个
,以了解任何缺少的转换/验证错误


例如,当
后面的列表在表单提交请求期间未正确(预)初始化时,您可能会收到“Value not valid”验证错误

另见:

即使我使用${product.appleProdgroupId}打印来自for each的值,我也得到了正确的值,但无法选择下拉列表…我实际上是JSF的新手…有人请帮助我解决这个问题…我尝试使用value=“#{product.appleProdgroupId}”但它不起作用…然后继续阅读我的剩余答案。另一方面,你也可以尝试更具体地描述具体问题,而不是说“它不起作用”。当你的车下面有一个爆胎时,你也不会说“它不工作了”给汽车机械师。让我描述我问题的整个设计。在我的托管bean中,我有一个产品组对象列表。每个产品组对象都包含一个产品对象列表。现在我需要在数据表中显示所有产品组,并为它们提供一个内联编辑工具。现在我使用for Each来迭代我的产品组列表存在于托管bean中。那么,它是循环中的一个循环?您不能将
用作将由类似
的JSF组件生成的循环的内部循环。使用
或其他
,或例如
。长话短说:阅读“请参阅”链接以更好地了解JSTL标记的工作原理。是的,确实是循环中的一个循环。但是当我使用${product.appleProdgroupId}时。我得到了所需的值,但无法将其设置为select菜单的值标记