Historico com vraptor  XML
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Autor Mensagem
jingle
Virtual Machine Man

Membro desde: 04/10/2006 20:40:08
Mensagens: 642
Localização: Canoas/RS
Offline

Olá estou tentando fazer um historico pra saber as paginas que carreguei e poder usar o voltar de uma forma melhor que o javascript que volta (chamando método que foi chamado para carregar a tela e passando os parametros que foi passado.).


tentei fazer da seguinte forma criei um objeto historyinfo que deixo sessionscoped e nele tem uma lista de history.

dai no meu interceptor faço da seguinte forma
para guardar o método stack e tudo mais que for preciso.



e quando quero voltar no history faço assim:


porém nao deu certo pois tem métodos que nao tem o result.redirect que simplesmente usa o default e assim após executar esse meu localhistory ele ia tentar ir para tela localHistory.jsp


tem alguma forma melhor de fazer isso?
[Email] [MSN]
garcia-jj
JWizard

Membro desde: 13/04/2009 22:11:50
Mensagens: 2715
Localização: Porto Alegre
Offline

Talvez alguma coisa assim. Creio que o melhor é você guardar o método e os argumentos ao invés do resourceInstance (esse deve morrer a cada requisição(?)).


http://github.com/garcia-jj
Não respondo dúvidas via MP. Use o fórum.
jingle
Virtual Machine Man

Membro desde: 04/10/2006 20:40:08
Mensagens: 642
Localização: Canoas/RS
Offline

método que tu diz seria o method mesmo né? não o resourceMethod.
e o args? não estou encontrando onde ele tira os args pra dar o invoke nesse method.

exemplo:


[Email] [MSN]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6395
Offline

receba no seu construtor um MethodInfo... e chame o getParameters

--
Caelum
www.caelum.com.br

jingle
Virtual Machine Man

Membro desde: 04/10/2006 20:40:08
Mensagens: 642
Localização: Canoas/RS
Offline

Lucas Cavalcanti wrote:receba no seu construtor um MethodInfo... e chame o getParameters


mas da onde vem os parametros? pq qndo intercepto algo ele usa o Stack.next passando o ResourceMethod e um Ojbeto que é a instancia da classe (não é isso?)

onde vou conseguir os parametros que ele usa pra chamar o metodo ?
[Email] [MSN]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6395
Offline

receba no construtor do interceptor um (MethodInfo info)...

e quando for guardar no historyInfo, guarde o info.getParameters()


--
Caelum
www.caelum.com.br

garcia-jj
JWizard

Membro desde: 13/04/2009 22:11:50
Mensagens: 2715
Localização: Porto Alegre
Offline

jingle, cabe algumas considerações sobre esse histórico.

Você tem que ter em mente que nem todas as páginas deve ir para o histórico. Um exemplo é um CRUD, onde você tem 4 operações básicas: listar, editar/incluir, salvar, excluir. As operações de listar e editar/incluir podem e devem ir para o histórico, porém os métodos de salvar e excluir não devem ir para o histórico, pois uma vez que você já excluiu o registro 2, por exemplo, você não tem mais como excluir novamente o 2.

Ou seja, essas operações com POST e DELETE não devem ir para seu histórico, inclusive se não me engano o Vraptor nem faz forward/redirect para métodos anotados com POST e DELETE.

Outra coisa a se pensar é a integridade de dados. Se eu estava no método que visualiza o registro 2, depois excluí o mesmo, e quando eu voltar no histórico e tentar acessar a página que visualiza o registro 2 você precisa dizer que ele não existe mais.

This message was edited 1 time. Last update was at 16/07/2010 11:40:25


http://github.com/garcia-jj
Não respondo dúvidas via MP. Use o fórum.
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6395
Offline

Só algumas correções:
garcia-jj wrote:(...) uma vez que você já excluiu o registro 2, por exemplo, você não tem mais como excluir novamente o 2.

Se vc implementa o DELETE direito, ele é indepotente, ou seja, excluir um recurso uma vez, ou 100 vezes da na mesma...
Mas na prática vc está certo

garcia-jj wrote:
Ou seja, essas operações com POST e DELETE não devem ir para seu histórico, inclusive se não me engano o Vraptor nem faz forward/redirect para métodos anotados com POST e GET.

o VRaptor só faz redirect para GET.

--
Caelum
www.caelum.com.br

garcia-jj
JWizard

Membro desde: 13/04/2009 22:11:50
Mensagens: 2715
Localização: Porto Alegre
Offline

Lucas Cavalcanti wrote:
garcia-jj wrote:
Ou seja, essas operações com POST e DELETE não devem ir para seu histórico, inclusive se não me engano o Vraptor nem faz forward/redirect para métodos anotados com POST e GET.

o VRaptor só faz redirect para GET.


Lucas, deveria ser POST e DELETE. Na correria me confundi, hahahaha. Já fiz a correção no meu comentário.

Abraços

This message was edited 1 time. Last update was at 16/07/2010 11:42:08


http://github.com/garcia-jj
Não respondo dúvidas via MP. Use o fórum.
 
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Ir para:   
Powered by JForum 2.1.8 © JForum Team