Tuukka Mustonen
Tuukka Mustonen

Reputation: 4831

JSF: Creating aliases for properties in backing bean

I am referring to pretty deep object hierarchies with pretty cryptic names in EL as in #{myBean.configBaseStack.excludeMethodFromAccounting.method.TimeoutBehaviorEnabled}.

I would like to point to this very same property through an alias like in:

<x:alias name="m" value="#{myBean.configBaseStack.excludeMethodFromAccounting.method" />
<h:inputText value="#{m.TimeoutBehaviorEnabled}" />

I guess one way to accomplish this would be to create these aliases in the backing bean, but I'd rather leave that to the template.

How to accomplish this in template/facelet level?

Upvotes: 6

Views: 4215

Answers (3)

Shervin Asgari
Shervin Asgari

Reputation: 24509

I think you can use <ui:param> to accomplish this:

<ui:param name="m" value="#{myBean.configBaseStack.excludeMethodFromAccounting.method}"/>

Then you can use it like this on the same page:

<h:inputText value="#{m.TimeoutBehaviorEnabled}" />

Upvotes: 9

Lefteris Laskaridis
Lefteris Laskaridis

Reputation: 2322

For all i know aliasing is not not supported in jsf, using the standard components that is.

Upvotes: 0

McDowell
McDowell

Reputation: 108949

You could probably use the JSTL-equivalent set tag for this (using the var and value attributes).

Upvotes: 1

Related Questions