Java JSF我需要用StringArray填充selectItems,但我需要首先解析它

Java JSF我需要用StringArray填充selectItems,但我需要首先解析它,java,jsf,Java,Jsf,我提出了另一个问题,希望能找到答案,但我走错了方向。这是供参考的问题() 我正在从属性文件中提取一个字符串数组(使用Apache配置),该数组如下所示 name,5486984,189.658.235.215,3.158.68.15,name2,189189,189.658.218.268,3.158.68.13... 这里是JSF的一部分 <f:selectItems itemValue="#{mainBean.information}" value="#mainBean.inform

我提出了另一个问题,希望能找到答案,但我走错了方向。这是供参考的问题()

我正在从属性文件中提取一个字符串数组(使用Apache配置),该数组如下所示

name,5486984,189.658.235.215,3.158.68.15,name2,189189,189.658.218.268,3.158.68.13...
这里是JSF的一部分

<f:selectItems itemValue="#{mainBean.information}" value="#mainBean.information}" />
我一直在引用这个

因此,我在这里,我刚刚发布。它将填充该字符串数组的每个元素。我只希望显示“name”,并将其他三个值作为实际的“value”传递


我试图创建一个映射对象,它是一个字符串和一个字符串数组,但JSF拒绝接受它。

好吧,在JSF2.0
中,Map
for
对我有效。您可以尝试为每个选项创建JSF,如中所示。它应该会起作用

我试图创建一个映射对象,它是一个字符串和一个字符串数组,但JSF拒绝接受它

Map
应该可以工作。你可以在中找到一个具体的例子。贴图键成为选项标签,贴图值成为选项值

您应该只知道选项值最终会出现在HTML响应中,在HTML
元素的
属性中,如下所示


由于HTML实际上是纯文本,因此在不首先转换非标准Java对象的情况下,无法在HTML中表示这些对象。
String[]
是非标准的,当您没有明确指定转换器时,默认情况下,结果将以HTML内联,如果是
String[]
则类似于


当选择该选项时,该值将被提交到服务器端。但是,由于该值是一个无法理解的字符序列,因此不可能以任何方式使用Java/JSF/EL将其转换回原始的
String[]

您也可以只传递包含名称的
列表,而不提供转换器



在处理表单提交时,您只需获取关联的
字符串[]
根据直接从配置文件中提交的名称返回,或者一些
映射
作为bean属性被记住。

您使用的是哪个版本的JSF?我可以为SelectItem传递一个字符串数组作为第二个值吗?警告:就“最佳实践”而言,roseindia.net是世界上最差的Java EE资源在代码片段中公开。在未经修改地复制其示例之前,请三思。
Private String [] information;
information = config.getStringArray("information"); // This brings in this string from the property file