Dentro do Interceptor.intercept (), como sei se a ação já foi executada?
Estou implementando algumas coisas no meu aplicativo baseado no Struts usando interceptores e estou ficando confuso sobre como o ciclo de vida deles funciona. De acordo com os documentos do Struts ("Interceptadores", "Interceptores de escrita" e"Foto grande"), deve funcionar algo como isto:
FirstInterceptor NextInterceptor LastInterceptor Action Result LastInterceptor NextInterceptor FirstInterceptor
o que faz sentido, mas estou tropeçando em como distinguir uma chamada de interceptador executando antes da ação de uma execução após a renderização do resultado (estou pulandoPreResultListener
está aqui).Se eu iniciar um depurador, recebo duas chamadas paraintercept()
e não consegue encontrar nada muito óbvio noActionInvocation
Eu estou sendo aprovado. (Atualizar: Esta parte foi uma grande confusão do meu lado, e eu pude responder minha pergunta abaixo quando a recebi)
o"Foto grande" A página fala de maneira um tanto confusa de uma cláusula "antes" e "depois" "chamada", mas não sei o que fazer com isso:
[...]
Isso inclui invocar quaisquer interceptadores (a cláusula before) antes de invocar a própria ação.
[...]
Os interceptores são executados novamente (na ordem inversa, chamando a cláusula after).
[...]
(Atualizar: Essas duas frases ainda são ruins)