2013-06-12 1 views
0

AbstractController를 확장하는 컨트롤러를 추가하기 전에는 프로젝트가 잘 작동했으나 "/"루트 페이지를 열려고하면 항상 유명한 404 페이지가 나타납니다. 내가 열 때 "/"페이지에 자동으로 로그인 양식을 참조하거나 내가 이미 loged 경우 인덱스를 참조해야한다 그래서 난 내 프로젝트에 스프링 통합 보안을프로젝트에 XmlViewResolver를 추가 한 후에 잘못된 매핑이 발생했습니다.

를이 내 디스패처 서블릿이다.

<beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:context="http://www.springframework.org/schema/context" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans  
     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
     http://www.springframework.org/schema/context 
     http://www.springframework.org/schema/context/spring-context-3.0.xsd 
     http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> 



    <context:component-scan base-package="gestion.delegation.controller" /> 
    <mvc:annotation-driven /> 

<bean class="org.springframework.web.servlet.view.XmlViewResolver"> 
     <property name="location"> 
      <value>/WEB-INF/spring-pdf-views.xml</value> 
     </property> 
     <property name="order" value="0" /> 
    </bean> 

    <bean id="viewResolver" 
     class="org.springframework.web.servlet.view.InternalResourceViewResolver" > 
     <property name="prefix"> 
      <value>/WEB-INF/pages/</value> 
     </property> 
     <property name="suffix"> 
      <value>.jsp</value> 
     </property> 
     <property name="order" value="1" /> 
    </bean> 



</beans>  
여기

컨트롤러이다

import java.util.HashMap; 
import java.util.Map; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import org.springframework.web.bind.ServletRequestUtils; 
import org.springframework.web.servlet.ModelAndView; 
import org.springframework.web.servlet.mvc.AbstractController; 

public class RevenueReportController extends AbstractController{ 

    @Override 
    protected ModelAndView handleRequestInternal(HttpServletRequest request, 
     HttpServletResponse response) throws Exception { 

     String output = 
      ServletRequestUtils.getStringParameter(request, "output"); 



     if(output ==null || "".equals(output)){ 
      //return normal view 
      return new ModelAndView("RevenueSummary"); 

     }else if("PDF".equals(output.toUpperCase())){ 
      //return excel view 
      return new ModelAndView("PdfRevenueSummary"); 

     }else{ 
      //return normal view 
      return new ModelAndView("RevenueSummary"); 

     } 
    } 
} 

의 Web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> 
    <display-name>GestionPersonnel</display-name> 
    <!-- Spring MVC --> 

    <servlet> 
     <servlet-name>Dispatcher</servlet-name> 
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>Dispatcher</servlet-name> 
     <url-pattern>/</url-pattern> 
    </servlet-mapping> 

    <servlet> 
     <servlet-name>default</servlet-name> 

     <servlet-class> 
      org.apache.catalina.servlets.DefaultServlet 
     </servlet-class> 
     <load-on-startup>1</load-on-startup> 

    </servlet> 

<servlet-mapping> 
    <servlet-name>default</servlet-name> 
    <url-pattern>*.css</url-pattern> 
    <url-pattern>*.png</url-pattern> 
    <url-pattern>*.gif</url-pattern> 
    <url-pattern>*.js</url-pattern> 
    <url-pattern>*.htm</url-pattern> 
</servlet-mapping> 

    <listener> 
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
    </listener> 

    <context-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value> 
      /WEB-INF/Dispatcher-servlet.xml, 
      /WEB-INF/spring-datasource.xml, 
      /WEB-INF/spring-security.xml, 
      /WEB-INF/spring-service.xml 
     </param-value> 
    </context-param> 

    <!-- Spring Security --> 
    <filter> 
     <filter-name>springSecurityFilterChain</filter-name> 
     <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> 
    </filter> 

    <filter-mapping> 
     <filter-name>springSecurityFilterChain</filter-name> 
     <url-pattern>/*</url-pattern> 
    </filter-mapping> 



</web-app> 
또한

난 캘리포니아 n이 abstactController에 의해 매핑 된 페이지를 결코 얻지 못한다. 내 디스패처 파일이 맞습니까? this question에서 말한 것과 똑같이하고 싶습니다. pdf를 genereate로 만드십시오 ...하지만 어디에서 오류가 있는지 모르겠습니까? .please help ..........

답변

0

AbstractController을 확장하지 마십시오.

@Controller 
@RequestMapping(value = "/") 
public class RevenueReportController 
+0

같은 ... 아무것도 변경되지 : 단지 예 org.springframework.stereotype.controller

사용 주석을 달 수 있습니다. 대답을 주셔서 감사합니다 – Somar

+0

@Souad 당신은 어떤 요구 사항도 가지고 있지 않습니다 ... – NimChimpsky

+0

docs 읽기 http://static.springsource.org/spring/docs/3.2.x/spring-framework-reference/html/ – NimChimpsky

관련 문제