有没有办法在.xhtml中调用java方法?
我只想从xhtml文件中调用java.net.URLEncoder.encode()方法。
是否可以这样做?
在jsp中很容易做到
答案 0 :(得分:1)
使用<f:param>
。
<h:outputLink value="page.jsf">
<f:param name="foo" value="#{bean.foo}" />
<f:param name="bar" value="#{bean.bar}" />
</h:outputLink>
这将以page.jsf?foo=encodedFooValue&bar=encodedBarValue
结尾。
注意:scriptlets确实可以轻松地在视图模板中编写原始Java代码,但这仍然不是一个好习惯!尽可能使用taglibs / EL,否则特定逻辑只属于真正的Java类,例如支持bean构造函数或方法。