Xpages组合框在托管bean中设置值

时间:2015-02-25 12:54:13

标签: xpages argument-passing managed-bean

我正在尝试将参数传递给托管bean。 bean配置和工作,有两个方法“getResponsible”和“setResponsible”。 调用“myLookup.responsible”有效。

我无法将参数传递给我的bean,也无法找出原因。 以下代码不起作用。

  <xp:comboBox id="comboBox1">
  <xp:selectItems>
  <xp:this.value><![CDATA[#{myLookup.setResponsible("Something")}]]>
  </xp:this.value>
  </xp:selectItems>
  </xp:comboBox>

一旦我输入paranthesis“)”,“(”或分号“;”我得到错误“EL语法错误”。我想我在这里犯了一些基本错误。

2 个答案:

答案 0 :(得分:4)

表达式语言的版本不允许轻松传递参数。此选项可能有效http://blog.defrog.nl/2012/04/settings-bean-parameterized-method-call.html

如果需要参数,我通常使用SSJS,所以:

#{javascript:myLookup.setResponsible("Something");

如果选项在页面生命期间不会发生变化,您可以随时计算页面加载次数,因此:

${javascript:myLookup.setResponsible("Something");

答案 1 :(得分:3)

我认为你刚刚做了一个简单的&#34;拼写错误&#34;保罗在答复中间接表示。您编写了Javascript代码,但未包含&#34; javascript:&#34;在表达的开头。

但是,如果您确实希望在EL中使用参数,那么请查看此very interesting article。我还没有尝试过(但我很快就会这样做) - 但是当你想使用EL时,两个不同的例子(看看评论)似乎很有趣。而且我更喜欢EL而不是SSJS。

/约翰