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 value属性能否用于引用映射的特定值?_Jsf - Fatal编程技术网

Jsf value属性能否用于引用映射的特定值?

Jsf value属性能否用于引用映射的特定值?,jsf,Jsf,我的bean有一个整数到字符串的映射,我试图用一个菜单来选择映射中某个键所引用的值 我的豆子看起来像这样: public class Bean { Map<Integer, String> map; //... } 公共类Bean{ 地图; //... } 我的xhtml文件的相关部分如下所示: public class Bean { Map<Integer, String> map; //... } 有没有办法做到这一点或类似的

我的bean有一个整数到字符串的映射,我试图用一个菜单来选择映射中某个键所引用的值

我的豆子看起来像这样:

public class Bean {
    Map<Integer, String> map;
    //...
}
公共类Bean{
地图;
//...
}
我的xhtml文件的相关部分如下所示:

public class Bean {
    Map<Integer, String> map;
    //...
}

有没有办法做到这一点或类似的事情?

如果需要的话,我可以换些豆子。需要注意的一点是,整数不是顺序的,因此创建一个列表会有很多空白,但如果这是我仍然可以尝试使用列表的唯一方法(尽管整数键不是索引)。也许有一种方法可以用ajax实现这一点?我研究了EL函数,但这似乎不是我所需要的。

您应该使用
Map
而不是
Map
,因为EL将文本数字0解释为长类型,并且它无法访问。你能找到的所有额外细节

要按使用EL的键访问地图元素,请使用:

#{bean.map[your-key]}

您的预期输出是什么???@VighaneshGursale,我希望这个例子更清楚一点。这能把事情弄清楚吗?谢谢,谢谢!在我的特殊情况下不会有0,那么可以使用整数而不是Long吗?@CaptainMan您在Facelets中编写的任何整数都将被视为
Long
,因此将您的地图重新声明为
map
。这就是这个答案基本上告诉你的。@CaptainMan如果无法更改你的地图,你可以在地图中使用“longToInteger()”