Re: WebWork

Tente algo assim:

[code]public class InterceptorX implements Interceptor{
public String intercept(ActionInvocation invocation) throws Exception {
String result = invocation.invoke();
//Nesse momento sua action já foi invocada, mais você ainda pode fazer algum tratamento antes de dar um retorno do seu interceptor, ou seja, antes de renderizar a página.
return result;

}

public void init() { }
public void destroy() { }
}[/code]

Você ainda pode extender a classe AroundInterceptor e implementar o método after(…), só que dessa forma não é mais possível mudar o fluxo da aplicação.

Espero tê-lo ajudado,
[]'s

Pode usar um chaining interceptor.

[quote=New__Radical]Olá Volnei,

É justamente esse o problema.
Tava pensando que fazendo do jeito que vc postou, dava certo. Ae comecei a ter problemas, e coloquei um Break Point aqui String result = invocation.invoke();.

Quando eu dou um F6 no eclipse, e executa a Action, qnd eu volto pro browser a página já foi exibida.

Eu queria executar a Action, saber o resultado, e depois continuar a execução do Interceptor, e colocar uns dados que poderão ou não ser vistos pelo usuário, dependendo do retorno da action.

Mas dessa maneira que ta o código em cima, não dá certo. Pode ser que eu dando um extends na classe que vc falou, funcione.

Vou testar! :wink: [/quote]

Você deve ter feito algo de errado, pois o retorno que é dado depende do retorno do interceptor. :roll:

Yeah … tem algo errado ai, os interceptors sao todos executados ANTES da execucao do RESULT, mesmo pq qualquer interceptor pode alterar o result.

Como usar um interceptor, depois da action ser executada e antes da página ser renderizada?

Olá Volnei,

É justamente esse o problema.
Tava pensando que fazendo do jeito que vc postou, dava certo. Ae comecei a ter problemas, e coloquei um Break Point aqui String result = invocation.invoke();.

Quando eu dou um F6 no eclipse, e executa a Action, qnd eu volto pro browser a página já foi exibida.

Eu queria executar a Action, saber o resultado, e depois continuar a execução do Interceptor, e colocar uns dados que poderão ou não ser vistos pelo usuário, dependendo do retorno da action.

Mas dessa maneira que ta o código em cima, não dá certo. Pode ser que eu dando um extends na classe que vc falou, funcione.

Vou testar! :wink: