MenuModel PrimeFaces por classe

Tenho hoje meu menu criado manualmente

<h:form style="text-align: center">
                            <p:menu>
                                <p:submenu label="Help Desk">
                                    <p:menuitem value="Home" action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(0)}" update="fdiv" ajax="false" icon="ui-icon-home"/>
                                </p:submenu>
                            </p:menu>
                            <p:spacer width="5" height="5"/>
                            <p:menu>
                                <p:submenu label="Sistemas">
                                    <p:menuitem value="DataSul" action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(1)}" update="fdiv" ajax="false" icon="ui-icon-arrowrefresh-1-w"/>
                                    <p:menuitem value="Benner"  action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(2)}" update="fdiv" ajax="false" icon="ui-icon-arrowrefresh-1-w"/>
                                    <p:menuitem value="Portal" action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(3)}"  ajax="false" icon="ui-icon-arrowrefresh-1-w"/>
                                </p:submenu>
                                <p:submenu label="TI">
                                    <p:menuitem value="Equipamentos" action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(4)}" ajax="false" icon="ui-icon-extlink"/>
                                    <p:menuitem value="Redes" action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(5)}" ajax="false" icon="ui-icon-extlink"/>
                                    <p:menuitem value="Telefonia" action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(6)}"  ajax="false" icon="ui-icon-extlink"/>
                                </p:submenu>
                            </p:menu>
                            <p:spacer width="5" height="5"/>
                            <p:menu>
                                <p:submenu label="Consultas">
                                    <p:menuitem value="Chamados" action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(7)}" icon="ui-icon-arrowrefresh-1-w"/>
                                </p:submenu>
                                <p:submenu label="Base Conhecimento">
                                    <p:menuitem value="Pesquisar" action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(8)}" ajax="false" icon="ui-icon-extlink"/>
                                </p:submenu>
                            </p:menu>
                        </h:form>

como eu faço para conseguir deixar as opçoes ACTION e ACTIONLISTENER sendo criado dinamicamente por uma classe

public MenuModel MenuBean() throws SQLException {
        try {
            rs = Conexao.Consulta("select id, descricao, tipo, url from help_menu order by ordem");
        } catch (SQLException ex) {
            FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL, "Erro ao Carregar Menu", ex.getMessage()));
        }

        Submenu submenu = null;
        model = new DefaultMenuModel();
        while (rs.next()) {
            if (rs.getInt("tipo") == 0) {
                submenu = new Submenu();
                submenu.setLabel(rs.getString("descricao"));
                model.addSubmenu(submenu);
            } else if (rs.getInt("tipo") == 1) {
                MenuItem item = new MenuItem();
                item.setValue(rs.getString("descricao"));
                submenu.getChildren().add(item);
                model.addSubmenu(submenu);
            }
        }
        return model;

    }

Essa é a minha classe, cria corretamente o meu menu, porém nao consigo fazer ele chamar e executar as coisas como menu manual.

Alguma sugestao??

Sobre a questao de actionListener já consegui fazer

item.setActionExpression(exprFactory.createMethodExpression(elctx,
                        "#{validaTipoTela.tipoTela(" + rs.getString("id") + ")}", String.class,
                        new Class<?>[0]));

Funcionou perfeitamente, porém o que nao consigo é fazer com que atualize a pagina, pois antes quando fazia isso manualmente, usava tbm o action do MenuItem do PrimeFaces, onde eu chamava o proprio xhtml

<p:menuitem value="DataSul" action="chamados.xhtml" actionListener="#{validaTipoTela.tipoTela(1)}" update="fdiv" ajax="false" icon="ui-icon-arrowrefresh-1-w"/>

Alguem sabe como consigo fazer com que atualize o xhtml da forma dinamica??

Alguem sabe como posso fazer???