我正在使用Apache Tiles开发Spring MVC Web应用程序。我使用pom.xml
依赖项输入了一些JavaScript库,例如JQuery。我的问题是,我可以参考我的磁贴配置中jar
内的脚本吗?如果是,我该如何添加?如果我将整个路径提供给js
中的jar
文件,是否会得到解决?
<tiles-definitions>
<definition name="base.definition"
template="/WEB-INF/jsp/layout.jsp">
<put-attribute name="title" value="" />
<put-attribute name="header" value="/WEB-INF/jsp/header.jsp" />
<put-attribute name="menu" value="/WEB-INF/jsp/menu.jsp" />
<put-attribute name="body" value="" />
<put-attribute name="footer" value="/WEB-INF/jsp/footer.jsp" />
<put-list-attribute name="javascripts">
<add-attribute value="<CAN THIS BE A LOCATION TO JAR??>" />
</put-list-attribute>
<definition>
<!--More stuff-->
</tiles-definitions>
示例场景: 我下载了datatables-1.9.4-2.jar,maven build将它放在 \ WEB-INF \ lib 下。在jar中我想要的javascript是 \ META-INF \ resources \ webjars \ datatables \ 1.9.4 \ media \ js \ jquery.dataTables.min.js 在这种情况下我的资源映射是什么以及如何在add-attribute元素中引用它?
答案 0 :(得分:0)
您应该可以通过在Spring MVC中定义资源映射来实现此目的:
<mvc:resources mapping="/js/**" location="classpath:/scripts"/>
然后按如下方式访问它:
<add-attribute value="/js/myscript.js"/>
此外,由于您正在使用网络简历,我引用了Spring Framework Reference Documentation, 22.16.9 Serving of Resources的相关部分:
WebJarsResourceResolver
也支持Webjars,当"org.webjars:webjars-locator"
库在类路径上时会自动注册。此解析程序允许资源链从HTTP GET请求中解析与版本无关的库"GET /jquery/jquery.min.js"
将返回资源"/jquery/1.2.0/jquery.min.js"
。