[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.
É 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! [/quote]
Você deve ter feito algo de errado, pois o retorno que é dado depende do retorno do interceptor. :roll:
É 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.