DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este 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.






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
Este post também está disponível para assinantes da Java Magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!






    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!



Publicidade
Autor
Carlos Eduardo G. Tosin

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
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03