【问题标题】:Xpages Combobox setting values in managed bean托管 bean 中的 Xpages Combobox 设置值
【发布时间】:2015-02-25 12:54:12
【问题描述】:

我正在尝试将参数传递给托管 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>

只要我输入括号“)”、“(”或分号“;”,我就会收到错误“EL 语法错误”。我想我在这里犯了一些根本性的错误。

【问题讨论】:

    标签: xpages argument-passing managed-bean


    【解决方案1】:

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

    如果需要参数,我一般用SSJS,所以:

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

    如果选项在页面生命周期内不会发生变化,您始终可以在页面加载时进行计算,因此:

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

    【讨论】:

      【解决方案2】:

      我认为你只是做了一个简单的“错字”,正如保罗在他的回复中间接指出的那样。您编写了 Javascript 代码,但在表达式的开头没有包含“javascript:”。

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

      /约翰

      【讨论】:

      • 保罗,快点打败我吧 ;-)
      • 是的,我非常想避免使用 SSJS,这就是我首先制作托管 bean 的原因。 :) 我会阅读这篇文章并尽量避免使用 SSJS。谢谢!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-20
      • 1970-01-01
      • 1970-01-01
      • 2013-02-19
      • 2016-09-04
      • 2017-06-10
      • 1970-01-01
      相关资源
      最近更新 更多