Controle de Collection na view

Bom dia à comunidade!
Tenho uma dúvida e gostaria de opiniões e dicas.

Na pagina tenho um form para controle do objeto:

  • Perfil;
    que está relacionada à uma lista de:
  • Recursos (paginas);
    logo tenho um relacionamento 1 Perfil para Muitos Recursos.

O sistema deve permitir o operador:

  • adicionar, remover e editar Recursos para um Perfil.

Pensei nos seguinte cenários:

  1. Controlar os Recursos com array javascript dos itens adicionados, removidos e editados e quando submeter o form enviar esse array e gravar tudo junto?
  2. A cada adição, remoção ou edição persistir esses Recursos na base com ajax?
  3. A cada adição, remoção ou edição persistir esses Recursos em sessão com ajax
    e quando submeter o form pegar os Recursos na sessão e gravar?
  4. Separar os cadastros? Um cadastro de Perfil, um cadastro de Recurso (esse já tem) e um cadastro de Perfil x Recurso, selecionando o Perfil e incluindo os Recursos numa lista?

O que pensei sobre esses cenários:

  1. gera muito trabalho controlando e validando com javascript;
  2. se o operador desistir do cadastro e clicar em cancelar, este cenario nao se aplicaria;
  3. se o operador desistir do cadastro e clicar em cancelar, tive hit no servidor e ocupei memoria sem necessidade, mas pode ser uma boa forma de controle;
  4. pode ser muito inconveniente ter que acessar 3 cadastros para um proposito;

Gostaria da opinião dos senhores sobre essa rotina e sobre outros possiveis cenarios.

Estou usando vraptor no controller e jquery na view.

Um abraço a todos e desde já envio meus sinceros agradecimentos.