【问题标题】:passing in a list of strings to a jsf bean将字符串列表传递给 jsf bean
【发布时间】:2011-05-21 05:39:35
【问题描述】:

在我的 JSF 文件中,我有一个如下所示的命令按钮:

'

startIt() 是一个没有参数的方法,它有一个硬编码的字符串数组列表。

我真正想做的是将可变数量的字符串传递给 startIt(),然后 摆脱硬编码。

如果我尝试使用“vararg”语法,例如

public void startIt(String...myStrings){ ...}

当我用一个字符串调用函数时,我得到以下错误:

错误的参数数量错误的参数数量 类 java.lang.IllegalArgumentException

任何关于如何让可变参数与 JSF 2 一起工作的想法,或者如果失败了,我们将不胜感激另一个潜在问题的解决方案。

谢谢。

【问题讨论】:

    标签: jsf-2 glassfish-3 variadic-functions


    【解决方案1】:

    其中一种方法是在 f:param 元素中指定值,然后在支持 bean 中返回该值:

    <h:commandLink actionListener="#{myBean.startIt}"> <f:param name="request" value="AnyValue"/> </h:commandLink>

    支持 Bean 代码:

    String request= (String)FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("request");

    【讨论】:

      猜你喜欢
      • 2014-03-12
      • 2012-08-10
      • 2012-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-31
      相关资源
      最近更新 更多