Como guardar um array de um objeto em uma página?

Olá, gostaria de opiniões de como fazer uma lista de um objeto persistir enquanto o usuário vai manipulando os objetos dentro dessa lista…
Ilustrando melhor meu problema,
imagine uma tela onde você cadastra um produto, esse produto possui um ingrediente.
Cada vez que você clica em adicionar ingrediente, esse ingrediente é adicionado à lista…
Ao lado do formulário, você vê todos os ingredientes que estão fazendo parte do produto!
Tenha em mente que isso não vai para o banco de dados em partes.
Somente quando o produto está totalmente preenchido é que vou persistir os dados no banco.

A primeira opção que pensei era guardar a lista na sessão…
chamando o servlet… o lado ruim disso é que eu vou precisar enviar ao servidor os dados do formulário sempre que ele adicionar ou remover um ingrediente.

Pensei agora em fazer por javascript… mas não manjo nada de javascript,
teria que fazer uma matriz com o código do ingrediente e o nome,
pra poder mostrar na tela qual ingrediente ele já adiocionou…
ou fazer uma stringona mesmo, separando cada ingrediente por algum caracter tipo ;
e separando o código da descrição por uma vírgula…

aí quando o usuário clicar em salvar, eu transformo isso no array e mando pro banco de dados…

também pensei em usar ajax, pra manipular a sessão… e guardar na sessão a lista…

outra opção que pensei comigo, seria manipular cookies por javascript…
mas não manjo nada também…

o que acham,
qual das opções seria a mais adequada na opinião de vocês?

No meu ponto de vista o uso de ajax se encaixaria bem nisso.
A cada clique em adicionar você submete e armazena na seção

Pq vc nao usa uma list ? vc pode armazena-la dentro da seção.
EX: List listaProdutos = new ArrayList();
listaProdutos.add(produto);
request.getSession.setAttribute(“nomeQualquer”,listaProdutos)

  ai vc vai manter na seção do usuario akela lista de produtos.....e vai poder manipula-la...
  desculpe qualquer erro de gramatica..hehe to meio na correria... mas axo q deu para passar maiso ou menos a ideia

Abraços

não sei como vc esta fazendo…se estausando algum framework ou algo do tipo…

  • vc pode como falaram acima gravar o array list na sessão , porem acho q vc tera q atualizar a pagina toda…(me corrijam se eu estiver errado)…

para fazer de uma forma q nao atualiza toda a pagina acho q tera q ser javascript ou ajax…

Att.,

opa, eu não queria ficar mandando sempre pro servidor, por isso só em último caso irei fazer o controle por sessão

vou tentar fazer isso aqui que me sugeriram…

não sei fazer mas vou dar uma pesquisadinha,

se ficar muito tenso, vou evitar a fadiga e fazer no servlet com sessão mesmo…
não fica tão elegante…
mas funciona :smiley:

obrigado a todos pelas respostas