Atribuindo um 'value' vinculado a um bean a partir de um bean [RESOLVIDO]

Fala galera! Eu já estou postando isso aqui agora porque toda vez eu deixo passar metade do dia com o problema ao invés de já postar aqui de uma vez.
É o seguinte: eu tenho um inputField (UIINput), assim como um SelectOneMenu, que são gerados a partir de um bean. São gerados dinamicamente. O problema é que, como isto é um formulário, na hora que vou submeter, é natural que estes campos estejam associados a variáveis em um backing bean e que, ao submeter, estes valores sejam modificados no mesmo. Mas eu não estou sabendo como faço isso! Dentre os métodos disponíveis, eu usei o input.setValue("#{pais.codigo}") mas isso fez aparecer escrito pais.codigo no UIInput (na interface) ao invés de vincular à variável ‘codigo’ do bean ‘pais’ cadastrado no faces-config.

Alguém sabe como fazer isso?! Aqui está um trecho da geração deste UIInput:

UIInput input = new UIInput();
input.setValueExpression("#{pais.codigo}");
input.setConverter(new IntegerConverter());    		

painel.getChildren().add(input);  //onde painel é um HtmlPanelGrid

O método setValueExpression, apesar de ser de UIComponent, classe da qual UIInput herda, não está nem sendo reconhecido pelo Eclipse. Tá acusando que não tem este método definido para o UIInput. E aliás, eu olhei na API e não sei nem usar aquilo de String e ValueExpression.

Se alguém puder ajudar, ficarei muito grato! Enquanto isso, vou procurando a solução também! Se achar, posto aqui!

Ok, já vi meu primeiro erro: o método que eu estava chamando estava com assinatura errada. O certo e corrente é:


UIInput input = new UIInput();
input.setValueBinding("#{pais.codigo}", ValueBinding);
input.setConverter(new IntegerConverter());    		
painel.getChildren().add(input); 
	    		

ahuahuahuauhuahu! Desta vez não precisou! De qualquer forma eu já deixo a parada aqui para que, caso alguém passe pelo mesmo problema, possa encontrar a solução aqui:

UIInput input = new UIInput();
FacesContext facesContext = FacesContext.getCurrentInstance();
ValueBinding vb = facesContext.getApplication().createValueBinding("#{pais.codigo}");
input.setValueBinding("value", vb);
input.setConverter(new IntegerConverter());    		
painel.getChildren().add(input);    		

Simples assim! Flws galera!