在spring mvc应用程序中正确连接资源的方法

时间:2014-07-19 16:00:42

标签: javascript css jquery-ui jsp spring-mvc

我在Spring MVC应用程序中使用Jquery UI。我在我的spring mvc-dispatcher-servlet.xml中给出了类似

的内容
<mvc:resources mapping="/resources/**" location="/resources/jqueryUI/" />

我的目录结构如下

directory structure

在我的jsp中我把它们称为

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
 <%@ page session="false" %>
 <html>

<head>
<script src="/resources/external/jquery/jquery.js"></script>
<script src="/resources/jquery-ui.js"></script>
<link href="/resources/jquery-ui.css" rel="stylesheet">

<script>

    $(function() {
 alert('function called');

    $("#datepicker").datepicker();
    });
</script>

 </head>



 <body>


 <div align="center">
 <form:form action="register" method="post" commandName="productViewModel">
 <table border="0">
<tr>
    <td colspan="2" align="center"><h2>Release Registration</h2></td>
</tr>
<tr>
    <td>Product Name:</td>
    <td><form:input path="name"/></td>
</tr>

<tr>
    <td>Version:</td>
    <td><form:input path="version"/></td>
</tr>

<tr>
    <td>Tag Id:</td>
    <td><form:input path="tagId"/></td>
</tr>

<tr>
    <td>Release Date:</td>
    <td><form:input path="releaseDate"/></td>

    <!-- Datepicker -->

   <td> <p>Date: <input type="text" id="datepicker"></p></td>

</tr>

<tr>
    <td>Setup:</td>
    <td><form:input path="setup"/></td>
</tr>

<tr>
    <td colspan="2" align="center"><input type="submit" value="Save" /></td>
</tr>

</table>
    </form:form>
</div>


 </body>

 </html>

但是,当我把那个页面甚至没有加载。但是当我删除

<mvc:resources mapping="/resources/**" location="/resources/jqueryUI/" />

页面正确加载,但是datepicker不起作用。 基本上我需要知道在spring mvc应用程序的jsp中链接资源(js / css)的正确方法是什么。 非常感谢您的帮助。

谢谢!

1 个答案:

答案 0 :(得分:0)

如果您使用的是tomcat,则可以使用default Servlet来提供资源。

的web.xml:

<servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>/resources/*</url-pattern>
</servlet-mapping>

使用c:url访问与上下文根相关的资源。

JSP:

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

<link rel=stylesheet href="<c:url value='/resources/jquery-ui.css'/>"
    type="text/css" />