Chamar tela por cima da outra para cadastrar um cargo e atualizar somente este campo na tela

Estou com um problema aki.
Tenho um cadastro de funcionário e quando vou fazer um cadastro vejo que ainda não tenho o cargo cadastrado no sistema e não aparece no selectOneMenu.
Bom o que quero é na hora que chegar neste ponto eu possa cadastrar um novo cargo em uma nova tela da um update somente no campo cargo sem perder o que ja foi digitado em todo o cadastro.

Alguem poderia me ajudar, como eu poderia chamar meu cadastro de cargo mantendo a tela de cadastro de funcionário intacta.

ja fiz uma implementação semelhante.
seguinte, meus Formulários tinham um método estático que verificavam se o form já estava aberto e retornava o mesmo ou o instanciava.

Ex:

public static FrmEmpresa getFrmEmpresa() {
        if (frmEmpresa == null) {
            frmEmpresa = new FrmEmpresa();
        }
        return frmEmpresa;
    }

através deste método eu posso ter acesso aos métodos da própria classe, e la dentro sempre tinha um método que fazia novamente a consulta para popular o “Combo”.
ou seja na sua tela de funcionário tem o método que popula o combo, e da sua tela de Cargo ao salvar um novo cargo, você acessa essa tela de funcionário e atualiza a “Combo”

fazendo assim ele mantem os dados já preenchidos?

sim, pois vc vai pegar a instância atual do seu funcionário e forçar a popular novamente a combo do cargo, não alterando quaisquer outros valores.

blz vou tentar aki depois te falo.
Falando nisso muito obrigado pela ajuda e rapidez tambem.

vc tem um exemplo ai?
deixa eu ver se entendi bem:
o form que vc se refere é o da tela ou é o do seu objeto?
e este metodo vc coloca dentro do bean?

opa.
seguinte
o método seria na sua classe que esta editando no caso a Funcionário.
nele vc provavelmente ja tem um método para popular sua combo.

dai de sua classe cargo, ao salvar vc vai disparar algo do tipo.

atualizaCombosExternas();

que seria o método

public void atualizaCombosExternas(){
   FrmFuncionario.getFrmFuncionario().preencheComboCargo();
}