2015-02-27 4 views
0

Spring MVC новичок, имеющий некоторые проблемы, развертывающие простое приложение. У меня есть класс UserController классПростая Spring MVC App не развертывается

package net.fluidinnovations.controllers; 

import net.fluidinnovations.domain.User; 
import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.servlet.ModelAndView; 

/** 
* 
* @author net.fluidinnovations 
*/ 
@Controller 
public class UserController { 
    @RequestMapping("/getUser") 
    public ModelAndView getUser(){ 
     ModelAndView model = new ModelAndView("user"); 
     User u = new User(); 
     u.setId(4); 
     model.addObject(u); 
     return model; 
    } 

IndexController

package net.fluidinnovations.controllers; 
import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 
/** 
* 
*/ 
@Controller 
public class IndexController { 
    @RequestMapping("/index") 
    public String index(){ 
     return "index"; 
    } 
} 

Моя весна-диспетчерская-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" 
     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-3.1.xsd 
     http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd 
     http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd"> 


     <mvc:annotation-driven/> 
     <context:component-scan base-package="net.fluidinnovations.controllers" /> 



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



</beans> 

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>dispatcher</servlet-name> 
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
     <load-on-startup>2</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>dispatcher</servlet-name> 
     <url-pattern>*.htm</url-pattern> 
    </servlet-mapping> 
    <session-config> 
     <session-timeout> 
      30 
     </session-timeout> 
    </session-config> 
</web-app> 

Сообщение I при попытке развернуть :

В месте внедрения в C: \ Users \ Admin \ Documents \ NetBeansProjects \ IssueTracking \ построить \ веб GlassFish сервер, развертывание нуль, ложные C: \ Users \ Admin \ Documents \ NetBeansProjects \ IssueTracking \ nbproject \ build-impl.xml: 1052: модуль не был развернут.

Мой index.jsp содержит простой:

<a href="/getUser">Get User!</a> 

, который должен перенаправлять на страницу user.jsp, содержащий код для отображения {} пользователя

Не знаю, почему его не развертываются, любая помощь благодарен.

+1

Вы уверены, что вы должны вернуть только модель в методе контроллера? Разве он не возвращает выходное представление? И хотя отладка не вызывает ошибок? – lateralus

ответ

0

сделать следующие изменения в вашей 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>dispatcher</servlet-name> 
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
     <load-on-startup>2</load-on-startup> 
     <init-param> <!-- **Add this** --> 
      <param-name>contextConfigLocation</param-name> 
      <param-value>Path/To/ServletContext/spring-dispatcher-servlet.xml</param-value> 
     </init-param> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>dispatcher</servlet-name> 
     <url-pattern>*.htm</url-pattern> 
    </servlet-mapping> 
    <session-config> 
     <session-timeout> 
      30 
     </session-timeout> 
    </session-config> 
</web-app> 
0

Я нашел ответ, это была простая ошибка с моей стороны. Я не включая необходимые пространства имен файлов и их соответствующие schemaLocations в диспетчерском-servlet.xml, а именно:

xmlns:context="http://www.springframework.org/schema/context" 
xmlns:mvc="http://www.springframework.org/schema/mvc" 

xsi:schemaLocation="http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">" 
Смежные вопросы