2013-06-24 3 views
1

저는 봄 mvc에 비교적 익숙합니다. 나는 페이지 네비게이션을 작동시킬 수 없다. 나는 설명서와 다른 포럼을 통해 도움을 봤지만 내가 잘못 가고있는 곳을 알아낼 수는 없습니다. 내가 appointments.jsp@RequestMapping이 봄에서 작동하지 않습니다. mvc

컨트롤러에게

package com.mycompany.myapp; 



@Controller 
public class HomeController { 

private static final Logger logger = LoggerFactory.getLogger(HomeController.class); 


@RequestMapping(value = "/", method = RequestMethod.GET) 
public String home(Locale locale, Model model) { 
    logger.info("Welcome home! The client locale is {}.", locale); 
    return "home"; 
} 

@RequestMapping(value = "/appointments", method = RequestMethod.GET) 
public String appointments(Locale locale, Model model){ 
    return "appointments"; 
} 

} 

web.xml을

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value>/WEB-INF/spring/root-context.xml</param-value> 
</context-param> 

<!-- Creates the Spring Container shared by all Servlets and Filters --> 
<listener> 
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener> 

<!-- Processes application requests --> 
<servlet> 
    <servlet-name>appServlet</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <init-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

<servlet-mapping> 
    <servlet-name>appServlet</servlet-name> 
    <url-pattern>/</url-pattern> 
</servlet-mapping> 

</web-app> 

서블릿-context.xml에

에 액세스하려고 할 때 누군가가 .. 내가 404를 얻을

도와주세요 수 있습니다

<!-- DispatcherServlet Context: defines this servlet's request-processing infrastructure --> 

<!-- Enables the Spring MVC @Controller programming model --> 
<annotation-driven /> 

<!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources in the ${webappRoot}/resources directory --> 
<resources mapping="/resources/**" location="/resources/" /> 

<!-- Resolves views selected for rendering by @Controllers to .jsp resources in the /WEB-INF/views directory --> 
<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <beans:property name="prefix" value="/WEB-INF/views/" /> 
    <beans:property name="suffix" value=".jsp" /> 
</beans:bean> 

<context:component-scan base-package="com.mycompany.myapp" /> 



</beans:beans> 

home.jsp

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
<%@ page session="false"%> 
<!DOCTYPE html> 
<html> 
<head> 
<meta name="viewport" content="width=device-width, initial-scale=1.0"> 
<!-- Bootstrap --> 
<link 
href="//netdna.bootstrapcdn.com/bootswatch/2.3.2/amelia/bootstrap.min.css" 
rel="stylesheet"> 
</head> 
<body> 
<script src="http://code.jquery.com/jquery.js"></script> 
<script 
    src="//netdna.bootstrapcdn.com/twitter- bootstrap/2.3.2/js/bootstrap.min.js"></script> 

<div class="navbar"> 
    <div class="navbar-inner"> 
     <div class="container"> 

      <a class="btn btn-navbar" data-toggle="collapse" 
       data-target=".nav-collapse"> <span class="icon-bar"></span> <span 
       class="icon-bar"></span> <span class="icon-bar"></span> 
      </a> <a class="brand" href="#">Doctor Assist</a> 

      <ul class="nav"> 
       <li class="active"><a href="#">Home</a></li> 
       <li><a href="/appointments.jsp">Appointments</a></li> 
       <li><a href="#">Patient Data</a></li> 

       <li class="dropdown"><a href="#" class="dropdown-toggle" 
        data-toggle="dropdown"> Account <b class="caret"></b> 
       </a> 
        <ul class="dropdown-menu"> 
         <li><a href="#">Personal</a></li> 
         <li><a href="#">Link</a></li> 
        </ul></li> 
      </ul> 

     </div> 
    </div> 
</div> 

<h1>work in progress</h1> 

</body> 
</html> 

appointments.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
pageEncoding="ISO-8859-1"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
</head> 
<body> 
</body> 
</html> 

답변

0

당신은 ContextPath 누락 및 잘못 직접 .jsp 파일을 참조한다.

은 작동하지 않습니다이

<li><a href="${pageContext.request.contextPath}/appointments">Appointments</a></li>

+0

번호를 사용해보십시오. 컨트롤러의 약속 방법에 대한 호출이 없습니다. 나는 뭔가를 놓치고있다. – user2180794

+0

@ user2180794'404' 오류가 발생합니까? 메소드가 호출되지 않았다고 어떻게 말할 수 있습니까? jsp에는 내용이없고 Controller 메소드에는 'Logger INFO'가 없습니다. 코드를 디버깅하고 있습니까? – Niranjan

+0

나는 그 방법으로 sys를 집어 넣었다. 나는 또한 appointments.jsp에 내용을 넣었습니다. 그것은 404 – user2180794

관련 문제