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 75 - WebApps com Struts2 – Parte 2
Nesta parte, continuaremos o desenvolvimento de uma aplicação completa com o Struts2 e veremos a integração com outros frameworks como Spring e FreeMarker.
Java Magazine 75
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Java Magazine 75
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Java Magazine 75
WebApps com Struts2 – Parte 2
Conheça na prática um dos mais populares frameworks MVC
Nesta parte, continuaremos o desenvolvimento de uma aplicação completa com o Struts2 e veremos a integração com outros frameworks como Spring e FreeMarker
De que se trata o artigo:
O artigo continua a apresentar o Struts2, um framework que facilita o desenvolvimento de aplicações web ao aplicar o padrão MVC à arquitetura da aplicação. Na primeira parte foram apresentadas funcionalidades básicas do framework com o desenvolvimento de um projeto simples, porém útil. Nesta parte continuamos o desenvolvimento desta aplicação e apresentamos novas funcionalidades como a injeção de dependência e o upload de arquivos.
Para que serve:
O Struts2 serve para aumentar a produtividade das equipes de desenvolvimento web, propondo, ao mesmo tempo, uma organização maior dos artefatos de código a partir da separação das responsabilidades de apresentação, controle e negócio e da existência de diversas funcionalidades prontas, comumente utilizadas em aplicações deste tipo.
Em que situação o tema é útil:
Quando devemos construir aplicações web de médio a grande porte e o tempo investido no aprendizado do framework é justificado por uma maior produtividade no desenvolvimento e na manutenção.
Aplicações Web com Struts2 – Parte 2:
O Struts2 é um dos frameworks web mais conhecidos e utilizados atualmente. Ele provê uma série de facilidades para a construção de aplicações web, melhorando a produtividade da equipe e diminuindo custos de manutenção devido a uma melhor organização do código. Na segunda parte desta série de artigos, continuamos o desenvolvimento de nossa aplicação de exemplo para apresentar novas funcionalidades. Apresentamos primeiro o container interno de injeção de dependências do Struts2 (Listagens 1 a 3) e, em seguida, sua integração com o Spring Framework (Listagens 4 e 5) para alcançar o mesmo objetivo. Em seguida, mostramos que é possível criar beans para injeção de dependências no contexto de sessão (Listagens 6 a 8). Tal componente armazena informações do usuário atual da aplicação e, com ele, é possível implementar funcionalidades de login/logout (Listagens 9 a 13). A próxima funcionalidade desenvolvida é o cadastro de membros: primeiro criamos a base e mostramos a integração com o FreeMarker (Listagens 14 a 18) e depois implementamos um cadastro quase completo (Listagens 19 a 27). Deixamos como exercício para o leitor implementar o cadastro de livros e, em cima deste cadastro, implementamos o upload de arquivo para armazenar a capa do livro no sistema (Listagens 28 a 30). Para finalizar, mostramos como exibir a capa do livro armazenada por meio do resultado stream, que permite retornar resultados binários como imagens, arquivos PDF e outros (Listagens 31 a 33).
Esta é a segunda parte de uma série de artigos sobre o Struts2, iniciada na Edição 74 da Java Magazine. Naquela edição, começamos com o básico, como a instalação do framework e a criação de um “Hello, World!”. Iniciamos também o desenvolvimento de uma aplicação web (WebApp) simples, mas com utilidade real: uma aplicação para gerência de pequenas bibliotecas chamada Bookshelf. Por meio deste exemplo, mostramos diversas funcionalidades do Struts2, como a abordagem dirigida ao modelo, uso de interceptadores, definição de resultados, validação de formulários, internacionalização de mensagens e integração com o framework SiteMesh para aplicação de leiaute gráfico a todas as páginas.
Nesta edição, continuaremos a desenvolver o Bookshelf (se você não seguiu a primeira parte, pode obter o código-fonte no site da Java Magazine) e mostraremos outras características do Struts2, como a injeção de dependências, upload de arquivo e resultados binários, e sua integração com outros frameworks como FreeMarker e Spring.
Atualização de versão
Depois do fechamento da primeira parte desta série de artigos, foram lançadas novas versões estáveis (GA, ou General Availability) do Struts2. A versão estável mais recente no momento da escrita deste artigo é a 2.1.8.1, que pode ser obtida no site do Struts2 (veja Links).
Para este artigo faremos uma atualização de versão e usaremos a versão 2.1.8.1 do framework. Para atualizar seu projeto, localize a pasta do projeto Bookshelf na qual se encontram os arquivos JAR, exclua as versões antigas dos JARs do Struts2 e suas dependências e copie as versões novas da pasta lib da distribuição do struts-2.1.8.1. A Tabela 1 lista os arquivos que devem ser atualizados e suas novas versões.
JAR
Versão Antiga
Versão Nova
commons-collection
3.1
"
ATENÇÃO! A exibição deste artigo foi interrompida.
Este é um post disponível para assinantes MVP
Conheça na prática um dos mais populares frameworks MVC
Nesta parte, continuaremos o desenvolvimento de uma aplicação completa com o Struts2 e veremos a integração com outros frameworks como Spring e FreeMarker
De que se trata o artigo:
O artigo continua a apresentar o Struts2, um framework que facilita o desenvolvimento de aplicações web ao aplicar o padrão MVC à arquitetura da aplicação. Na primeira parte foram apresentadas funcionalidades básicas do framework com o desenvolvimento de um projeto simples, porém útil. Nesta parte continuamos o desenvolvimento desta aplicação e apresentamos novas funcionalidades como a injeção de dependência e o upload de arquivos.
Para que serve:
O Struts2 serve para aumentar a produtividade das equipes de desenvolvimento web, propondo, ao mesmo tempo, uma organização maior dos artefatos de código a partir da separação das responsabilidades de apresentação, controle e negócio e da existência de diversas funcionalidades prontas, comumente utilizadas em aplicações deste tipo.
Em que situação o tema é útil:
Quando devemos construir aplicações web de médio a grande porte e o tempo investido no aprendizado do framework é justificado por uma maior produtividade no desenvolvimento e na manutenção.
Aplicações Web com Struts2 – Parte 2:
O Struts2 é um dos frameworks web mais conhecidos e utilizados atualmente. Ele provê uma série de facilidades para a construção de aplicações web, melhorando a produtividade da equipe e diminuindo custos de manutenção devido a uma melhor organização do código. Na segunda parte desta série de artigos, continuamos o desenvolvimento de nossa aplicação de exemplo para apresentar novas funcionalidades. Apresentamos primeiro o container interno de injeção de dependências do Struts2 (Listagens 1 a 3) e, em seguida, sua integração com o Spring Framework (Listagens 4 e 5) para alcançar o mesmo objetivo. Em seguida, mostramos que é possível criar beans para injeção de dependências no contexto de sessão (Listagens 6 a 8). Tal componente armazena informações do usuário atual da aplicação e, com ele, é possível implementar funcionalidades de login/logout (Listagens 9 a 13). A próxima funcionalidade desenvolvida é o cadastro de membros: primeiro criamos a base e mostramos a integração com o FreeMarker (Listagens 14 a 18) e depois implementamos um cadastro quase completo (Listagens 19 a 27). Deixamos como exercício para o leitor implementar o cadastro de livros e, em cima deste cadastro, implementamos o upload de arquivo para armazenar a capa do livro no sistema (Listagens 28 a 30). Para finalizar, mostramos como exibir a capa do livro armazenada por meio do resultado stream, que permite retornar resultados binários como imagens, arquivos PDF e outros (Listagens 31 a 33).
Esta é a segunda parte de uma série de artigos sobre o Struts2, iniciada na Edição 74 da Java Magazine. Naquela edição, começamos com o básico, como a instalação do framework e a criação de um “Hello, World!”. Iniciamos também o desenvolvimento de uma aplicação web (WebApp) simples, mas com utilidade real: uma aplicação para gerência de pequenas bibliotecas chamada Bookshelf. Por meio deste exemplo, mostramos diversas funcionalidades do Struts2, como a abordagem dirigida ao modelo, uso de interceptadores, definição de resultados, validação de formulários, internacionalização de mensagens e integração com o framework SiteMesh para aplicação de leiaute gráfico a todas as páginas.
Nesta edição, continuaremos a desenvolver o Bookshelf (se você não seguiu a primeira parte, pode obter o código-fonte no site da Java Magazine) e mostraremos outras características do Struts2, como a injeção de dependências, upload de arquivo e resultados binários, e sua integração com outros frameworks como FreeMarker e Spring.
Atualização de versão
Depois do fechamento da primeira parte desta série de artigos, foram lançadas novas versões estáveis (GA, ou General Availability) do Struts2. A versão estável mais recente no momento da escrita deste artigo é a 2.1.8.1, que pode ser obtida no site do Struts2 (veja Links).
Para este artigo faremos uma atualização de versão e usaremos a versão 2.1.8.1 do framework. Para atualizar seu projeto, localize a pasta do projeto Bookshelf na qual se encontram os arquivos JAR, exclua as versões antigas dos JARs do Struts2 e suas dependências e copie as versões novas da pasta lib da distribuição do struts-2.1.8.1. A Tabela 1 lista os arquivos que devem ser atualizados e suas novas versões.
JAR
Versão Antiga
Versão Nova
commons-collection
3.1
"
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
Vítor Estêvão Silva Souza
Space do autor
Graduação em Ciência da Computação e Mestrado em Informática com ênfase em Engenharia de Software na Universidade Federal do Espírito Santo (UFES), onde trabalhou também como professor substituto.
Space do autor


1
0
