MenuBar do primefaces - Duvidas

Olá a todos, bom, reparem no meu código abaixo e nos comentarios, esse código monta o menu do site de acordo com as permissões do usuário…

[code]public MenuModel getMenu() {
//---------- pego as paginas que o cara tem acesso ----------
HttpSession ses = (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(true);
acessos = (List) ses.getAttribute(“acessos”);

    //---------- busco os menus do sistema ----------
    List<Menus> menus = new ArrayList<Menus>();
    Criteria c = hu.getCriteria(Menus.class);
    c.addOrder(Order.asc("nome"));
    menus = dao.listarCriteria(c);
    hu.commitTransaction();
    
    menu = new DefaultMenuModel();
    
    //---------- crio o menuitem que retorna para pagina inicial ----------
    MenuItem miIndex = new MenuItem();
    miIndex.setValue("Página inicial");
    miIndex.setUrl("/faces/index.xhtml");
    miIndex.setId("mi_" + miIndex.hashCode());
    miIndex.setUpdate("messages,panelTopo,lCentro,usuario,listaProdutos,filtro,orcamentoDetalhe,categorigasPromocionais,categorigas");
    miIndex.setAjax(false);
    menu.addMenuItem(miIndex);
    
    //---------- Crio um submenu vazio ----------
    Submenu sub = new Submenu();
    menu.addSubmenu(sub);
    
    //---------- crio os submenus e seus respectivos menuitens ----------
    for (Menus m : menus) {
        Submenu s = new Submenu();
        s.setLabel(m.getNome());
        for (Acessos a : acessos) {
            if (a.getPaginasRestritasIdpaginasrestritas().getMenusIdmenus().getIdMenus().longValue() == m.getIdMenus().longValue()) {
                MenuItem mi = new MenuItem();
                mi.setValue(a.getPaginasRestritasIdpaginasrestritas().getTitulo());
                mi.setUrl(a.getPaginasRestritasIdpaginasrestritas().getUrl());
                mi.setId("mi_" + a.hashCode());
                s.getChildren().add(mi);
            }
        }
        menu.addSubmenu(s);
    }
    
    //---------- crio um menuitem que faz logoff ----------
    FacesContext facesContext = FacesContext.getCurrentInstance();
    ELContext elContext = facesContext.getELContext();
    ExpressionFactory expressionFactory = facesContext.getApplication().getExpressionFactory();
    MethodExpression methodExpression = expressionFactory.createMethodExpression(elContext, "#{mBUsuarioLogado.logout()}", null, new Class[] {ActionEvent.class});
    
    MenuItem miSair = new MenuItem();
    miSair.setActionExpression(methodExpression);
    miSair.setValue("Sair");
    miSair.setId("mi_" + miSair.hashCode());
    miSair.setUpdate("messages,panelTopo,lCentro,usuario,listaProdutos,filtro,orcamentoDetalhe");
    miSair.setAjax(false);
    menu.addMenuItem(miSair);
    
    return menu;
}[/code][b]Primeira duvida - [/b]Porque o menuitem "Pagina Inicial" fica depois dos submenus ? EX: ( Cadastros - Consultas - Outros - Pagina Inicial - Sair ) eu quero q ele fique antes, ou na ordem q eu adicionar, tem alguma configuração pra isso ?

Segunda duvida No mozilla firefox mais atual, funciona normal, mas no google chrome o primeiro submenu aparece com a seguinte configuração no css (left: -67) o que corta a metade do submenu, tem alguma coisa q pode ser feita ?

Obs: Por enquanto eu criei aquele submenu vazio na frente pra nao ficar cortando…

tentei colocar uma configuração de css left: 0px; mas nao adiantou…

Há uma issue no primefaces em relação a este problema: http://code.google.com/p/primefaces/issues/detail?id=2022

não sei se alguém fez algum workaround até agora.