Olá amigos,
Estou com uma dúvida quanto a melhor abordagem para se criar um menu dinâmico.
Tenho 2 opções:
1 - Fazer todos os “tipos” de menu usando JSTL direto na página, fazendo uma coisa do tipo:
<c:when test="#{usuarioBean.flagLogin!=true}">
<h:form>
<p:menu>
<p:submenu label="Submenu">
<p:menuitem value="Link 1" url="#"/>
</p:submenu>
</p:menu>
</h:form>
</c:when>
<c:otherwise>
2 - Fazer o modelo em um objeto Java, algo do tipo:
[code]public static MenuModel getVisitorModel() {
MenuModel model = new DefaultMenuModel();
// Primeiro Submenu
Submenu submenu = new Submenu();
submenu.setLabel("Bem-vindo ao Loocaliza");
item = new MenuItem();
item.setValue("Quero me cadastrar");
item.setUrl("/cadastro.jsf");
submenu.getChildren().add(item);[/code]
E usando na página algo assim:
<p:menu model="#{menuBean.model}" />
Qual seria a melhor abordagem? Acho a primeira abordagem meio “feia” porém deixa mais livre pra se mexer com HTML. Na opinião de vocês, qual seria a melhor opção?