Reputation: 4052
I have a button that I'd like to render based on whether a function returns true or false.
The HTML:
<p:commandButton type="button" rendered="#{myBean.checkPermission(1)}" value="Create" />
And the supporting bean:
public boolean checkPermission(String actionKey) {
...
}
The problem is that when I call checkPermission with a numeric parameter like
#{myBean.checkPermission(1)}
,
it works fine, but with I pass a String as a parameter, i.e.
#{myBean.checkPermission(ABC)}
, I get an empty string passed. Any idea why?
Upvotes: 4
Views: 7380
Reputation: 85789
You're not passing a String
, instead an ABC
variable that can't be understood by EL and your method will receive null
value (thanks to BalusC for correct me). You should add apostrophes (') to tell the framework you're passing a String
:
<p:commandButton type="button" rendered="#{myBean.checkPermission('ABC')}"
value="Create" />
Upvotes: 8