Método .addSeparator();

Alguém poderia me informar, por que esse método não funciona direito?
Tenho um JMenu(), e dentro vários JMenuItem porém quando vou separar os JMenuItem com o método JMenu.addSeparator(), esconde alguns JMenuItem…

exemplificando:

private JMenu getJMenu5() {
	if (jMenu5 == null) {
	  jMenu5 = new JMenu();
	  jMenu5.setText("CADASTROS");
	  jMenu5.add(getJMenuItem20());
	  jMenu5.add(getJMenuItem38());
	  jMenu5.add(getJMenuItem1());
	  jMenu5.add(getJMenuItem2());
	  jMenu5.add(getJMenuItem43());
	  jMenu5.addSeparator();
	  jMenu5.add(getJMenuItem46()); // esse não aparece
	  jMenu5.add(getJMenuItem16());
	  jMenu5.add(getJMenu2()); // esse não aparece
	  jMenu5.addSeparator(); // se eu coloco essa linha, os JMenuItem especificados nos comentários, não são mostrados quando abro o sistema.
	  jMenu5.add(getJMenuItem5());
	  jMenu5.add(getJMenu11()); // esse não aparece
	  jMenu5.add(getJMenu12());
	}
	return jMenu5;
  }

Alguém saberia o por que dessa situação?

Isso não devia ter nada a ver.

Posta o código que gera esses JMenuItens que não aparecem.

segue a criação dos JMenuItem que não abrem:

private JMenu getJMenu5() {  
    if (jMenu5 == null) {  
      jMenu5 = new JMenu();  
      jMenu5.setText("CADASTROS");  
      jMenu5.add(getJMenuItem20());  
      jMenu5.add(getJMenuItem38());  
      jMenu5.add(getJMenuItem1());  
      jMenu5.add(getJMenuItem2());  
      jMenu5.add(getJMenuItem43());  
      jMenu5.addSeparator();  
      jMenu5.add(getJMenuItem46()); // esse não aparece  
      jMenu5.add(getJMenuItem16());  
      jMenu5.add(getJMenu2()); // esse não aparece  
      jMenu5.addSeparator(); // se eu coloco essa linha, os JMenuItem especificados nos comentários, não são mostrados quando abro o sistema.  
      jMenu5.add(getJMenuItem5());  
      jMenu5.add(getJMenu11()); // esse não aparece  
      jMenu5.add(getJMenu12());  
    }  
    return jMenu5;  
  }  

  private JMenuItem getJMenuItem46() {
	if (jMenuItem46 == null) {
	  jMenuItem46 = new JMenuItem();
	  jMenuItem46.setText("Usuários");
	  jMenuItem46.addActionListener(new java.awt.event.ActionListener() {
		public void actionPerformed(java.awt.event.ActionEvent e) {
		  abrirCadasUsuarios();
		}
	  });
	}
	return jMenuItem46;
  }

  private JMenuItem getJMenuItem2() {
	if (jMenuItem2 == null) {
	  jMenuItem2 = new JMenuItem();
	  jMenuItem2.setText("Agências");
	  jMenuItem2.addActionListener(new java.awt.event.ActionListener() {
		public void actionPerformed(java.awt.event.ActionEvent e) {
		  abrirCadasAgencias();
		}
	  });
	}
	return jMenuItem2;
  }

    /**
   * This method initializes jMenu11
   * 
   * @return javax.swing.JMenu
   */
  private JMenu getJMenu11() {
	if (jMenu11 == null) {
	  jMenu11 = new JMenu();
	  jMenu11.setText("Exames");
	  jMenu11.add(getJMenuItem33());
	  jMenu11.add(getJMenuItem34());
	}
	return jMenu11;
  }