Apache Struts 1 Desenvolvimento web com Java Idéias principais • Model View Controller • Front Controller • Action Mapping • Form Beans • Struts Tags • Plugins #2 Desenvolvimento web com Java Model View Controller View •JSP •Velocity •Freemarker •Swing Controller •Servlets •Struts 1 •Struts 2 •JSF Model •EJB •JPA •Spring •JAX-WS Dependência Notificação (opcional) #3 Desenvolvimento web com Java Exemplo (conveniente) de MVC EJB Container EJB DB Web Container Action 1 JSP Action 2 Velocity HTTP Requests Front Controller Dispatch (Struts Servlet) Action 3 Resources (jpg, gif, js, css) HTTP Response Desenvolvimento web com Java Exercício 1: Calculadora de Juros • Forward Action • Form Bean • Action • Basic Conversion #5 Desenvolvimento web com Java Actions • ? Extends [Dispatch]Action – public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request HttpServletResponse response) throws Exception • Multi-threaded – Sincronize (ou não use) variáveis de instância – Compartilhe recursos (connection, socket, entity manager, hibernate session,...) #6 Desenvolvimento web com Java Exercício 2: Calculadora Multifuncional • Dispatch Action • DynaActionForm • Exception Handler #7 Desenvolvimento web com Java Exercício 3: Cadastro de Cliente • Internacionalização • Validação – Server side – Client side #8 Desenvolvimento web com Java Exercício 4: Blog • Tiles Definitions • Tiles Tags – :put – :insert – :getAsString #9 Desenvolvimento web com Java Resumo • O struts se tornou um padrão na indústria, por simplificar muito o desenvolvimento de aplicações java para web. • Implementa o padrão MVC, principalmente no desenvolvimento de Controllers (Actions) • Possui mecanismos para manipulação e validação de formulários, internacionalização e reuso de páginas. • A fusão com o WebWork e novidades na plataforma levaram ao desenvolvimento de uma # 10 nova versão. Desenvolvimento web com Java Dúvidas? # 11