2013-03-12 2 views
1

Я хочу swtich между типом, который установлен как enum в моем Bean, чтобы динамически включать файлы .xhtml.Включить файлы в JSF динамически из перечисления?

У меня есть Тип объекта устройства:

public static enum Type { 
    Android, iOS, WP7, Windows, Blackberry; 
} 

И здесь я хочу, чтобы динамически включать различные .xhtml файлы:

<ui:include src="./preview/WelcomePreviewAndroid.xhtml" /> 
<ui:include src="./preview/WelcomePreviewiOS.xhtml" /> 
<ui:include src="./preview/WelcomePreviewBlackberry.xhtml" /> 

Это должно зависеть от того, какой тип устанавливается в устройство :

#{skinningBean.currentDevice.type} 

Как я могу реализовать инструкцию switch?

ответ

1

С атрибутом rendered вы можете установить, должен ли элемент отображаться или нет. Поскольку не содержит какое-либо вынесенное атрибут, вы должны окружить его другими ДИВ например:

<h:panelGroup layout="block" rendered="#{skinningBean.currentDevice.type == 'android'}"> 
    <ui:include src="./preview/WelcomePreviewAndroid.xhtml" /> 
</h:panelGroup> 
+0

Нет нет никакого вынесен варианта :(Что бы Beed слишком хорошо – 4ndro1d

+0

Хорошо я установил его, только вокруг него с h: panelGroup, который имеет атрибут rendered. Обновите свой ответ, и я приму его :) – 4ndro1d

+0

Это здорово, если он работает, удачи. – berkay

Смежные вопросы