2017-05-12 2 views
0

Je suis newbie à Java & MVC. J'utilise Netbeans IDE 8.2, Spring MVC 4.0.1 Framework et GlashFish Server 4.1.1Afficher Bonjour monde dans NetBeans 8.2 printemps MVC 4.0.1

Je viens de créer une nouvelle application web avec tout ce qui est par défaut et j'ai créé une vue hello.jsp et un contrôleur HelloController.Java.

Je suivais des instructions sur le site this

Suite est ma structure répertoire/projet Project Directory Structure

Voici ma dépêche fichier web.xml

<?xml version="1.0" encoding="UTF-8"?> 
 
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"> 
 
    <context-param> 
 
     <param-name>contextConfigLocation</param-name> 
 
     <param-value>/WEB-INF/applicationContext.xml</param-value> 
 
    </context-param> 
 
    <listener> 
 
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
 
    </listener> 
 
    <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> 
 
    <session-config> 
 
     <session-timeout> 
 
      30 
 
     </session-timeout> 
 
    </session-config> 
 
    <welcome-file-list> 
 
     <welcome-file>redirect.jsp</welcome-file> 
 
    </welcome-file-list> 
 
</web-app>

Voici mon fichier SpringApp-servlet.xml

<?xml version='1.0' encoding='UTF-8' ?> 
 
<!-- was: <?xml version="1.0" encoding="UTF-8"?> --> 
 
<beans xmlns="http://www.springframework.org/schema/beans" 
 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 
     xmlns:p="http://www.springframework.org/schema/p" 
 
     xmlns:aop="http://www.springframework.org/schema/aop" 
 
     xmlns:tx="http://www.springframework.org/schema/tx" 
 
     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd 
 
     http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd 
 
     http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd"> 
 

 
    <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping"/> 
 

 
    <!-- 
 
    Most controllers will use the ControllerClassNameHandlerMapping above, but 
 
    for the index controller we are using ParameterizableViewController, so we must 
 
    define an explicit mapping for it. 
 
    --> 
 
    <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> 
 
     <property name="mappings"> 
 
      <props> 
 
       <prop key="index.htm">indexController</prop> 
 
      </props> 
 
     </property> 
 
    </bean> 
 

 
    <bean id="viewResolver" 
 
      class="org.springframework.web.servlet.view.InternalResourceViewResolver" 
 
      p:prefix="/WEB-INF/jsp/" 
 
      p:suffix=".jsp" /> 
 

 
    <!-- 
 
    The index controller. 
 
    --> 
 
    <bean name="indexController" 
 
      class="org.springframework.web.servlet.mvc.ParameterizableViewController" 
 
      p:viewName="index" /> 
 

 
     <!-- the application context definition for the springapp DispatcherServlet --> 
 
<!-- <bean name="/hello.htm" class="springapp.web.HelloController" /> --> 
 
    
 
</beans>

Voici mon fichier Controller Bonjour

/* 
 
* To change this license header, choose License Headers in Project Properties. 
 
* To change this template file, choose Tools | Templates 
 
* and open the template in the editor. 
 
*/ 
 
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; 
 
/** 
 
* 
 
* @author marsh 
 
*/ 
 
public class HelloController { 
 
    protected final Log logger = LogFactory.getLog(getClass()); 
 
    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) 
 
      throws ServletException, IOException { 
 
     logger.info("Returning hello view"); 
 
     return new ModelAndView("hello.jsp"); 
 
    } 
 
}

Tout ce que je voulais, c'est afficher hello.jsp en le déployant. Veuillez aider.

Répondre

0

lorsque vous utilisez 4.x printemps, vous devez utiliser des annotations, puis il vous suffit d'ajouter @Controller au début de votre méthode