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
Jsf 带有ui的映射内部映射:重复抛出UpdateModelException_Jsf_El_Uirepeat - Fatal编程技术网

Jsf 带有ui的映射内部映射:重复抛出UpdateModelException

Jsf 带有ui的映射内部映射:重复抛出UpdateModelException,jsf,el,uirepeat,Jsf,El,Uirepeat,有一个 Map<String,Map<Double,Double>> priceMatrix 6个多小时以来,这个问题让我觉得很糟糕。我的第一个想法是在我的bean中提供自己的getter和setter。这不起作用,因为jsf在调用setter之前先调用getter 我的问题有解决办法吗 使用列表会更好吗 谢谢大家! <h:inputText value="#{calcModel.priceMatrix.get(x).get(y)}" /> 您的其他输入看

有一个

Map<String,Map<Double,Double>> priceMatrix
6个多小时以来,这个问题让我觉得很糟糕。我的第一个想法是在我的bean中提供自己的getter和setter。这不起作用,因为jsf在调用setter之前先调用getter

我的问题有解决办法吗

使用列表会更好吗

谢谢大家!

<h:inputText value="#{calcModel.priceMatrix.get(x).get(y)}" />
您的其他输入看起来也不好,
value=“#{x}”
当然也不可写,但您现在已经能够找到正确的语法:只需使用
{map[key]}
语法而不是
{key}

注意,这并不是一个JSF问题。从堆栈跟踪中可以进一步找到异常的根本原因是
javax.el.propertynotwriteableexception
。正如它的包javax.el所说,这是一个el问题,而不是JSF问题

您的其他输入看起来也不好,
value=“#{x}”
当然也不可写,但您现在已经能够找到正确的语法:只需使用
{map[key]}
语法而不是
{key}


注意,这并不是一个JSF问题。从堆栈跟踪中可以进一步找到异常的根本原因是
javax.el.propertynotwriteableexception
。正如它的包
javax.el
所说,这是一个el问题,而不是JSF问题。

我的错,JSF不需要地图上的setter。而且它也能处理地图。。对于一个简单的地图,它是这样的:
但是地图中有一个地图吗?如果我删除了内部地图,帖子就没有问题了。对不起,我不知道,我还没有尝试过类似的方法。但是我对这个用例可能的解决方案非常感兴趣:)我的错,JSF不需要地图上的setter。而且它也能处理地图。。对于一个简单的地图,它是这样的:
但是地图中有一个地图吗?如果我删除了内部地图,帖子就没有问题了。对不起,我不知道,我还没有尝试过类似的方法。但是我对这个用例的一个可能的解决方案非常感兴趣:)它工作得更好,但仍然存在错误。邮局现在可以工作了。但上的值更改不起作用。旧值在重新加载后保留。并在地图上推送一个新条目。那太疯狂了。有解决办法吗?谢谢你。@Moinsn,最好你为新问题打开新的问题,这样你就不会让一个人负担过重,其他人也可以从答案中受益。这样做效果更好,但仍然存在错误。邮局现在可以工作了。但上的值更改不起作用。旧值在重新加载后保留。并在地图上推送一个新条目。那太疯狂了。有解决办法吗?谢谢你。@Moinsn,你最好为新问题提出新问题,这样你就不会让一个人负担过重,其他人也可以从答案中受益。
value="#{calcModel.priceMatrix.get(x).get(y)}": Illegal Syntax for Set Operation
<h:inputText value="#{calcModel.priceMatrix.get(x).get(y)}" />
<h:inputText value="#{calcModel.priceMatrix[x][y]}" />