2011-12-20 2 views
0

웹 응용 프로그램에서 주석이 달린 컨트롤러에 Spring 3 'MVC 지원을 사용하려고합니다. 내 응용 프로그램의 context.xml에서Spring 3 @Controller가 호출되지 않습니다. 요청 받기

, 내가 추가 한 다음 다음과 같이

<mvc:annotation-driven /> 
<context:component-scan base-package="com.abc.def.etc"/> 
<bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> 
    <property name="prefix" value="/WEB-INF/jsp/"/> 
    <property name="suffix" value=".jsp"/> 
    <property name="order" value="1" /> 
</bean> 

내 컨트롤러 주석이 : 나는에서 볼 수 있습니다 내 응용 프로그램을 시작

@Controller 
@RequestMapping("/optimizerRules") 
public class OptimizerRulesController { 
private OptimizerRulesService optimizerRulesService; 
private static final Log LOG = LogFactory.getLog(OptimizerRulesController.class); 

public OptimizerRulesController() 
{ 
    LOG.info("Initializing OptimizerRulesController"); 
} 

@RequestMapping(method = RequestMethod.GET) 
public ModelAndView getRuleAttributesAndRules(ModelMap model) 
{ 
    LOG.info("Entering getRuleAttributesAndRules method"); 
    } 

OptimizerRulesController가 초기화 된 내 로그. 내가 http://localhost:8080/appName/optimizerRules를 사용하여 내 응용 프로그램을 호출 할 때

Creating instance of bean 'optimizerRulesController' 
Initializing OptimizerRulesController 
Mapped URL path [/optimizerRules] onto handler 'optimizerRulesController' 

는 그러나, 나는 404 오류 : 나는 또한 다음을 참조 할 수 있습니다! 여기서 누락 된 설정은 무엇입니까?

덕분에

+0

보기 페이지가 있습니까? 아니면 반환 값? –

+0

web.xml에 디스패처 구성을 넣을 수 있습니까? – sinuhepop

+0

@DaveNewton - 예, 아래에 있습니다. 간결하게하기 위해 위의 내용을 짧게했지만 관계없이 그 로그의 항목을 계속 볼 수 있습니다. – DJ180

답변

1

스프링 MVC는 일반적으로 레벨을 WARN에 매핑이 특정 요청을 찾을 수 없습니다 것을 기록한다. 로그에 그 것을 보지 않고 WARN이 활성화되었다고 가정하고 자신의 로그 문이 표시되지 않는다고 가정하면 요청이 Spring MVC DispatcherServlet을 치지 않는 것처럼 들리므로 URL이 잘못된.

URL은 http://server:port/war/dispatcherServletMapping/optimizerRules이어야합니다. 따라서 가정이 유효한 경우 web.xml에서 누락 된 경로 구성 요소를 알려야합니다.

+0

감사합니다.이 문제가 해결되었습니다. 내 web.xml의 DispatcherServlet은 * .htm URL 경로와 일치했습니다. opimizerRules.htm으로 URL을 변경하면 효과가있었습니다. – DJ180