Este é um post disponível para assinantes MVPEste post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais!
Artigo Java Magazine 77 - AOP com Struts 2
Apresentação da arquitetura de interceptors do Struts 2, que possibilita a programação orientada a aspectos. Os interceptors têm o objetivo de capturar as requisições feitas às actions antes que elas cheguem ao seu destino. Veremos como eles funcionam, como eles são configurados e o que fazer para customizá-los.
Java Magazine 77
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Java Magazine 77
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Java Magazine 77
AOP com Struts 2
Aplicando AOP em aplicações desenvolvidas com Struts 2
De que se trata o artigo:
Apresentação da arquitetura de interceptors do Struts 2, que possibilita a programação orientada a aspectos. Os interceptors têm o objetivo de capturar as requisições feitas às actions antes que elas cheguem ao seu destino. Veremos como eles funcionam, como eles são configurados e o que fazer para customizá-los.
Para que serve:
Este artigo serve para desenvolvedores que têm interesse em conhecer como funcionam os interceptors do Struts 2 e em como desenvolver o seu próprio código para interceptar chamadas às actions. Os interceptors são a forma de programar orientado a aspectos usando o framework.
Em que situação o tema é útil:
As pessoas que desejam programar orientado a aspectos no Struts 2 e não conhecem a arquitetura dos interceptors encontrarão neste artigo uma abordagem simples e prática para entender, configurar e criar seu próprio código para interceptar requisições.
AOP com Struts 2:
O Struts 2 é um framework web que nasceu da fusão dos projetos Struts e WebWork. Dentre suas novas funcionalidades estão o suporte a interceptors, que são códigos executados depois que uma requisição é feita e antes que ela chegue à action à qual se destina. Os interceptors dão ao framework o suporte à programação orientada a aspectos (AOP), de forma que as actions não possuam qualquer referência a eles.
O Struts 2 é um framework MVC baseado em ações (action-based framework), nascido da união dos projetos Struts e WebWork. Mesmo tendo herdado o nome Struts, a maior parte das suas funcionalidades foram herdadas do WebWork, o que torna o Struts e o Struts 2 frameworks bastante diferentes.
Já a AOP permite “plugar” funcionalidades no código, também conhecidas como aspectos. A grande vantagem é que o código não possui conhecimento a respeito dos aspectos, o que permite habilitá-los e desabilitá-los sem que seja necessária qualquer alteração no código que é beneficiado pela sua presença. No Struts 2, o suporte à AOP é feito através do uso de interceptors.
Neste artigo será abordada a arquitetura de interceptors do Struts 2, de forma que o leitor entenderá seus conceitos e funcionamento, bem como a forma de configurá-los. O leitor também aprenderá a criar seus próprios códigos de interceptação como forma de habilitar o AOP em suas aplicações.
Interceptors
Um interceptor é um objeto que envolve a action, de forma que a requisição passa por ele antes de passar pela action e volta a passar por ele depois que a action é executada, antes que ocorra o redirecionamento para um result. Quem é responsável por fazer a chamada ao interceptor é o Struts 2.
A Figura 1 mostra onde o interceptor está posicionado quando uma requisição acontece.
Figura 1. Esquema mostrando a interceptação da chamada a uma action por um interceptor.
Na verdade, não existe a restrição de que apenas um interceptor pode capturar a invocação de uma action. Podem existir vários fazendo este papel, os quais executam em cadeia numa ordem definida. Cada interceptor é responsável por executar a sua tarefa e solicitar para o Struts 2 a invocação do próximo na sequência. Este fluxo ocorre até que não existam mais interceptors, e neste momento a action é invocada. A Figura 2 mostra como funciona o fluxo da requisição quando na presença de diversos interceptors. É importante perceber que a sequência de invocação passa pelos Interceptors 1, 2 e depois 3. Isto é, existe uma ordem bem definida e que sempre é seguida.
"
ATENÇÃO! A exibição deste artigo foi interrompida.
Este é um post disponível para assinantes MVP
Aplicando AOP em aplicações desenvolvidas com Struts 2
De que se trata o artigo:
Apresentação da arquitetura de interceptors do Struts 2, que possibilita a programação orientada a aspectos. Os interceptors têm o objetivo de capturar as requisições feitas às actions antes que elas cheguem ao seu destino. Veremos como eles funcionam, como eles são configurados e o que fazer para customizá-los.
Para que serve:
Este artigo serve para desenvolvedores que têm interesse em conhecer como funcionam os interceptors do Struts 2 e em como desenvolver o seu próprio código para interceptar chamadas às actions. Os interceptors são a forma de programar orientado a aspectos usando o framework.
Em que situação o tema é útil:
As pessoas que desejam programar orientado a aspectos no Struts 2 e não conhecem a arquitetura dos interceptors encontrarão neste artigo uma abordagem simples e prática para entender, configurar e criar seu próprio código para interceptar requisições.
AOP com Struts 2:
O Struts 2 é um framework web que nasceu da fusão dos projetos Struts e WebWork. Dentre suas novas funcionalidades estão o suporte a interceptors, que são códigos executados depois que uma requisição é feita e antes que ela chegue à action à qual se destina. Os interceptors dão ao framework o suporte à programação orientada a aspectos (AOP), de forma que as actions não possuam qualquer referência a eles.
O Struts 2 é um framework MVC baseado em ações (action-based framework), nascido da união dos projetos Struts e WebWork. Mesmo tendo herdado o nome Struts, a maior parte das suas funcionalidades foram herdadas do WebWork, o que torna o Struts e o Struts 2 frameworks bastante diferentes.
Já a AOP permite “plugar” funcionalidades no código, também conhecidas como aspectos. A grande vantagem é que o código não possui conhecimento a respeito dos aspectos, o que permite habilitá-los e desabilitá-los sem que seja necessária qualquer alteração no código que é beneficiado pela sua presença. No Struts 2, o suporte à AOP é feito através do uso de interceptors.
Neste artigo será abordada a arquitetura de interceptors do Struts 2, de forma que o leitor entenderá seus conceitos e funcionamento, bem como a forma de configurá-los. O leitor também aprenderá a criar seus próprios códigos de interceptação como forma de habilitar o AOP em suas aplicações.
Interceptors
Um interceptor é um objeto que envolve a action, de forma que a requisição passa por ele antes de passar pela action e volta a passar por ele depois que a action é executada, antes que ocorra o redirecionamento para um result. Quem é responsável por fazer a chamada ao interceptor é o Struts 2.
A Figura 1 mostra onde o interceptor está posicionado quando uma requisição acontece.
Figura 1. Esquema mostrando a interceptação da chamada a uma action por um interceptor.
Na verdade, não existe a restrição de que apenas um interceptor pode capturar a invocação de uma action. Podem existir vários fazendo este papel, os quais executam em cadeia numa ordem definida. Cada interceptor é responsável por executar a sua tarefa e solicitar para o Struts 2 a invocação do próximo na sequência. Este fluxo ocorre até que não existam mais interceptors, e neste momento a action é invocada. A Figura 2 mostra como funciona o fluxo da requisição quando na presença de diversos interceptors. É importante perceber que a sequência de invocação passa pelos Interceptors 1, 2 e depois 3. Isto é, existe uma ordem bem definida e que sempre é seguida.
"
ATENÇÃO! A exibição deste artigo foi interrompida.
Este é um post disponível para assinantes MVPEste post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia. Clique aqui para saber mais!

Você está em:
canal Java
Publicidade
Carlos Eduardo G. Tosin
Space do autor
Instrutor oficial dos cursos on-line de Java da Softblue. Formado em Ciência da Computação pela PUC-PR, pós-graduado em Desenvolvimento de Jogos para Computador pela Universidade Positivo e Mestre em Informática na área de Sistemas Distribuídos, também pela PUC...
Space do autor


0
0
