Unable to load static resources:Spring MVC

I am creating a sample application with Spring MVC.My problem is that my static resources like css and javascript are not loaded.Could anyone please help me.This is my first spring application.Any help will be highly appreciable....

Below are my code...

login.jsp

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<html>

<head>

<spring:url value="/resources/common/css/login.css" var="loginCSS" />
<spring:url value="/resources/common/js/login.js" var="loginJS" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>

<link href="${loginCSS}" rel="stylesheet" />
<script src="${loginJS}"></script>

</head>

<body>

<h2>Sample spring mvc</h2>
<div class="test">
  <div class="form">

    <form class="test">
      <input type="text" placeholder="username"/>
      <input type="password" placeholder="password"/>
      <button>login</button>
      <p class="message">Not registered? <a href="#">Create an account</a></p>
    </form>
  </div>
</div>

</body>
</html>

sample-servlet

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

    <context:component-scan base-package="com.sample.controller" />

    <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/views/" />
        <property name="suffix" value=".jsp" />

    </bean>
    <mvc:resources mapping="/resources/**" location="/resources/" />
    <!-- <mvc:default-servlet-handler/> -->
    <mvc:annotation-driven />

</beans>

login.css

.test {
    background-color: red;
}

Myfolder structure enter image description here

Answers 1

  • Replace <mvc:resources mapping="/resources/**" location="/resources/" /> with

    <mvc:resources mapping="/resources/css/**" location="/resources/common/css/" />        
    <mvc:resources mapping="/resources/js/**" location="/resources/common/js/" />
    

    And in your jsp use like this:

    <spring:url value="/resources/css/login.css" var="loginCSS" />
    <spring:url value="/resources/js/login.js" var="loginJS" />
    

Related Articles