[Resolvido](JSP) Lista de Input's para MBean

Olá, povitcho!

Revirei o Google, mas acho que as palavras chaves não me baixaram hehehehehehe

Eu tenho um mestre-detalhe, em que o mestre tem uma lista DINÂMICA de detalhes, isto é, vc clica no ‘maizinho’ e ele coloca mais um item (isso é feito por command link, indo até o servidor e atualizando a página). O problema é que eu preciso recuperar esta lista na volta - por exemplo, quando a pessoa clica em ok.

Sendo uma lista dinâmica de itens, a única solução que achei plausível foi possuir um ArrayList no MBean e cada item esteja ligada a um índice desta lista. Mas na prática, tem acontecido que os demais command links da tela têm deixado de funcionar.

Alguém já fez algo similar, já ouviram falar, tem alguma ajuda? Eu não tenho muitas dicas por enquanto do meu problema, gostaria que se alguém já tivesse feito algo assim e me informar se eu estou no caminho certo.

Conforme eu tiver mais dados, eu vou postando.

MBean:

private List<ArrayList> nomesAtributos = new ArrayList<String>();
/** Get & Set **/

(...)
//action de adicionar item à lista
public String addComponent() {
		FacesContext context = FacesContext.getCurrentInstance();
		Application app = context.getApplication();

		int idlink = getLastIndex();

(...)
		ValueBinding vb = app.createValueBinding("#{novaLinhaBean.nomesAtributos[0]}");
		HtmlInputHidden hiddenLink = (HtmlInputHidden) app
				.createComponent(HtmlInputHidden.COMPONENT_TYPE);
		hiddenLink.setId("hidden" + idlink);
		hiddenLink.setValueBinding("value",vb);
(...)
                component.getChildren().add(hiddenLink);
                return null; 
}

Não faço idéia de como se resolve isso. Acabamos passando todos os itens por parâmetro e ponto…

Foi resolvido até que facilmente.

No Mbean, criei um ArrayList. E no value do campo, coloquei “mBean.nomedaLista[0]”. Com os indices, funcionou maravilha.

O “+” é um command link que adiciona um item a lista no Bean, e recarrega a página. E no componente da página, imprimo sempre a lista completa.