Encontrar um objeto através de um dado nome

Caros UJ.

Estou precisando invocar um método de um objeto cujo nome será informado em tempo de execução. Algo como: jMenuItemCliente, jMenuItemFornecedor. Dado a permissão do usuário, que é verificada em tempo de execução, quero habilitar ou desabilitar os menus. Ou seja, tenho o nome dos objetos em uma lista, e de acordo com a execução quero usar o nome do objeto para mudar o seu estado. Pergunta, tem uma maneira de substituir o nome do objeto em tempo de execução para a invocação de um determinado método? 

[code]<jMenuItemFornecedor>.setEnabled(false);[/code]

Grato.

Usualmente você associa JMenus a actions.

http://java.sun.com/docs/books/tutorial/uiswing/misc/action.html

Outra forma, que é usada por vários frameworks Swing, é setar a propriedade “name” de cada JComponent (um JMenuItem ou um JMenu é um JComponent) e procurar dentro do JFrame (ou de outro Container) que componentes são JMenu (ou JMenuItem) e tem o “name” igual ao que você está procurando.

Outra alternativa (um pouco mais chata), é você utilizar Reflection para buscar o field que você deseja a partir do nome informado.

Obrigado.

Vou setar o nome nas propriedades do objeto. Imaginava que ao nomear um componente sua propriedade name teria o mesmo valor. Mas agora verificando, notei que name do objeto está null. Gostei também da alternativa a partir de Action.

Valeu.

  Marcos.