a aplicacao esta funcionando execute o comando ant list.Agora abra um browsere navegue ate a pagina inicial de nossa aplicacao atraves da seguinte URL: http://localhost:8080/springapp/index.jsp.Apagina da aplicacao1.5. Download doSpring FrameworkSe voce nao fez o download do Spring Framework, agora e a hora de faze-lo. Paraeste tutorial utilizamos o Spring Framework 2.5 que pode ser baixadogratuitamente em http://s3.amazonaws.com/dist.springframework.org/release/SPR/spring-framework-2.5-with-dependencies.zip.Descompacte o arquivo. Para completar a instalacao e necessario configurar o ambiente. Agorapodemos realmente desenvolver o nosso aplicativo Spring Framework MVC.1.6. Modificando oarquivo'web.xml' napasta 'WEB-INF'Entre na pasta 'springapp/war/WEB-INF'.Modifique o arquivo 'web.xml' quecriamos anteriormente. Vamos definir DispatcherServlet (tambemconhecido como 'Front Controller'. Esta definicao servlet tambem tem uma entrada <servlet-mapping/> que faz mapeamento dos padroes de URL que iremos utilizar. Decidimos deixar qualquer URL com a extensao '.htm' ser encaminhada para o servlet 'springapp' (o DispatcherServlet).'springapp/war/WEB-INF/web.xml':<?xml version="1.0" encoding="UTF-8"?><web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" > <servlet> <servlet-name>springapp</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springapp</servlet-name> <url-pattern>*.htm</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file> index.jsp </welcome-file> </welcome-file-list> </web-app>Criaremos um arquivo chamado 'springapp-servlet.xml' napasta 'springapp/war/WEB-INF'.Este arquivo contem a definicao do bean usado pelo DispatcherServlet. E no WebApplicationContext onde todos os componentes web saorelacionados. O nome deste arquivo e determinado pelo valor do elemento <servlet-name/> do arquivo 'web.xml'. Esta e aconvencao de nomenclatura padrao usado pelo Spring's Web MVC framework. Agora,adicione uma entrada bean chamada '/hello.htm' eespecifique a classe springapp.web.HelloController. Isso define o controlador que o aplicativo ira utilizar para atender auma solicitacao com o mapeamento URL igual a '/hello.htm'. O Spring Web MVC framework usa uma implementacaode classe chamada HandlerMapping paradefinir o mapeamento entre a URL requisitada e o objeto que vai lidar com estarequisicao. Ao contrario do DispatcherServlet,o HelloController e responsavel pelo tratamento de uma requisicao para uma pagina especificado site e e conhecido como um 'Page Controller'. O padrao HandlerMapping queo DispatcherServlet usae o BeanNameUrlHandlerMapping; esta classe vaiutilizar o nome do bean para mapear a URL na requisicao para que o DispatcherServlet saibaqual controlador deve ser invocado para lidar com URLs diferentes.'springapp/war/WEB-INF/springapp-servlet.xml':<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <!-- the application context definition for the springapp DispatcherServlet --> <bean name="/hello.htm" class="springapp.web.HelloController"/> </beans> 1.7. Copiandobibliotecas para 'WEB-INF/lib'Primeiro crie a pasta 'lib' dentrode 'war/WEB-INF'. Copie o arquivo spring.jar (de spring-framework-2.5/dist) e spring-webmvc.jar (de spring-framework-2.5/dist/modules)para a pasta criada 'war/WEB-INF/lib'.Copie tambem commons-logging.jar (de spring-framework-2.5/lib/jakarta-commons)para 'war/WEB-INF/lib'. Estes arquivos serao implantados no servidor e serao usados no processode compilacao.1.8. Criandoo ControllerCriando a classe Controller o nome da classe sera HelloController,e sera definida no pacote 'springapp.web'.Primeiro crie o pacote e depois oarquivo 'HelloController.java' gravando-ona pasta 'src/springapp/web'.'springapp/src/springapp/web/HelloController.java':package springapp.web;import org.springframework.web.servlet.mvc.Controller;import org.springframework.web.servlet.ModelAndView;import javax.servlet.ServletException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import java.io.IOException;public class HelloController implements Controller { protected final Log logger = LogFactory.getLog(getClass()); public ModelAndViewhandleRequest(HttpServletRequest request, HttpServletResponseresponse) throws ServletException, IOException { logger.info("Returning hello view"); return new ModelAndView("hello.jsp"); }}Esta e uma implementacao de Controller basica. Estaremos expandindo este mais tarde, bem como aplicar algumas das implementacoes de base do controller fornecidos pelo Spring. Em Spring Web MVC, o Controller processa o pedido e retorna ao aModelAndView - neste caso, um chamado 'hello.jsp' que e tambem o nome do arquivo JSP. O modelo que esta classe retorna e efetivamente resolvido atraves de um ViewResolver. Uma vez que nao fora explicitamente definido