javasf@googlegroups.com
[Top] [All Lists]

Re: [javasf] seam básico

Subject: Re: [javasf] seam básico
From: David Faulstich
Date: Mon, 16 May 2011 18:14:30 -0300
Se você passar o ID ele vai Alterar (Update) na entidade. Se não passar (Através do comando de Add Entidade) ele vai criar um novo.

De uma olhada no método wire que existe no EntidadeHome.java que o seam gen criou.  Se o id estiver settado, ele carrega os dados do objeto (da um find) e depois vai carregando todos os relacionamentos para N e para 1.

O metodo wire chama o getInstance() que exite no home porque foi Herdado da classe EntityHome<T> onde T é a entidade. Ele utiliza o ID passado através do <f:param /> do page.xml e do botão de ação da página LIST.


Os parâmetros que têm a string FROM serve para identificar de qual tela a requisição está chegando para ao final do processo de atualização, alteração ou seleção, o sistema voltar para tela de início.

Note que o Seam Gen não gera cruds com N para N e para isto é necessário alterar o método WIRE e também os parâmetros do page.xml.

Em 16 de maio de 2011 17:17, Victor Vidigal <victorvidigal@xxxxxxxxx> escreveu:
agora sim entendi melhor mas nao completamente
nao estava vendo no page.xml... agora clareou um pouco

só nao vi onde ele recupera o objeto pelo id que eu passei para a outra pagina...
tipo passo o id da pagina de listagem para a pagina de edição...
como ele sabe que eu quero criar o objeto daquele id?


--
Victor Vidigal Ribeiro
MSN: victorvidigal@xxxxxxxxx
SKYPE: victor.vidigal
Tel.: 32 8831-1366
       21 8446-5622


Em 16 de maio de 2011 16:48, David Faulstich <davidfdr@xxxxxxxxx> escreveu:

O jeito que o seam gen gera parece bem complicado de início, porém vamos lá:

Se você abrir a página "List" gerada, verá que ele renderiza nos botões de ação um <f:param /> com o  ID (PK) do objeto que você irá editar.

Se você abrir a página XXXEdit.page.xml verá também que existe um parâmetro responsável por armazenar o ID (PK) do objeto através de parâmetros.
<param name="XXXXXIdFormaCobranca" value="#{xxxxxHome.xxxxxxxIdxxxxxxx}"/>

Automaticamente ao clickar no botão através da ação wire o seam carrega o XXXHome.java da entidade respectiva. Se o ID for passado, ele irá alterar a entidade, caso contrário, a página Edit irá incluir uma nova.

Para entender, tem que abrir todas as páginas geradas, inclusive o .page.xml, para entender o que ocorre no processo.


Em 16 de maio de 2011 15:42, Victor Vidigal <victorvidigal@xxxxxxxxx> escreveu:
sabe se temalgum lugar explicando como isto funciona?

até conseguifazer funcionar com o seam gen
mas ainda nao consegui ver direito como ele recupera o objeto pelo id.

tah parecendo magica pra mim...

--
Victor Vidigal Ribeiro
MSN: victorvidigal@xxxxxxxxx
SKYPE: victor.vidigal
Tel.: 32 8831-1366
       21 8446-5622


Em 16 de maio de 2011 14:10, David Faulstich <davidfdr@xxxxxxxxx> escreveu:
@RequestParameter
    private Long idDocumento;

--
Você recebeu esta mensagem por que é membro do Javasf
http://groups.google.com/group/javasf
 
Conheça também o Java Brazil: http://groups.google.com/group/thejavabrazil

--
Você recebeu esta mensagem por que é membro do Javasf
http://groups.google.com/group/javasf
 
Conheça também o Java Brazil: http://groups.google.com/group/thejavabrazil

--
Você recebeu esta mensagem por que é membro do Javasf
http://groups.google.com/group/javasf
 
Conheça também o Java Brazil: http://groups.google.com/group/thejavabrazil

--
Você recebeu esta mensagem por que é membro do Javasf
http://groups.google.com/group/javasf
 
Conheça também o Java Brazil: http://groups.google.com/group/thejavabrazil
<Prev in Thread] Current Thread [Next in Thread>