404 with spring 3

Posted by markjason72 on Stack Overflow See other posts from Stack Overflow or by markjason72
Published on 2010-12-21T08:05:04Z Indexed on 2010/12/21 12:54 UTC
Read the original article Hit count: 270

Filed under:
|
|

hi I am going through my first lessons with spring 3.I created a dynamic web app in eclipse with the following structure.

     spring3mvc \src\my.spring.HelloWorldController.java
                \WebContent
                   |
                   |-----WEB-INF\jsp\hello.jsp                     
                   |-----index.jsp
                   |-----web.xml
                   |-----WEB-INF\spring-servlet.xml
                   |-----WEB-INF\lib\...*.jar files

I created the spring-servlet.xml as below

<context:component-scan base-package="my.spring" />
    <bean id="viewResolver"
 class="org.springframework.web.servlet.view.UrlBasedViewResolver">
   <property name="viewClass"
  value="org.springframework.web.servlet.view.JstlView" />
   <property name="prefix" value="/WEB-INF/jsp/" />
   <property name="suffix" value=".jsp" />
 </bean>

and coded the controller

package my.spring;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class HelloWorldController {
 @RequestMapping("/hello")
 public ModelAndView helloWorld() {
  String message = "Hello World, Spring 3.0!";
  return new ModelAndView("hello", "message", message);
 }
}

index.jsp has a link to hello view

<html>
<body>
<a href="hello.html">Say Hello</a>

</body>
</html>

finally in hello.jsp I have put

<html>
<body>
${message}
</body>
</html>

My web.xml has

<display-name>Spring3MVC</display-name>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

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

When I run the app on Tomcat6 server( thru eclipse),I can see the index page at http://localhost:8080/Spring3MVC/ .It displays the link to hello page.When I click on it(http://localhost:8080/Spring3MVC/hello.html),I get a 404 error.

message /Spring3MVC/hello.html
description The requested resource (/Spring3MVC/hello.html) is not available.

Any idea how I can solve this?

thanks

mark.

© Stack Overflow or respective owner

Related posts about java

Related posts about spring