WebJars不能与Tomcat7 + SpringMVC + Sitemesh3一起使用

时间:2014-03-26 19:20:10

标签: spring-mvc tomcat7 sitemesh webjars

我正在尝试使我的应用程序与在Tomcat7上运行的WebJars一起使用,但我的HTML页面找不到CSS / JS文件。

我已经将web.xml更改为v3.0以及项目的各个方面(在Eclipse中)。还检查了tge容器中的web.xml,并且已经将其配置为v3.0。

当我使用SpringMVC时,我将配置描述为官方文档:

<resources mapping="/webjars/**"    location="classpath:/META-INF/resources/webjars/"/>

在我的“sitemesh3.xml”文件中,我已将排除配置为“资源”文件夹:

<?xml version="1.0" encoding="UTF-8"?>

<sitemesh>
    <mapping path="/*" decorator="/resources/decorator.html"/>
    <mapping path="/resources/*" exclue="true"/>

    <content-processor>
        <tag-rule-bundle class="org.sitemesh.content.tagrules.html.DivExtractingTagRuleBundle" />
    </content-processor>
</sitemesh>

在我的“decotator.html”文件中,我试图通过这种方式访问​​JS:

<script src="/webjars/select2/select2.js"></script>

<script src="../webjars/select2/select2.js"></script>

在我的“pom.xml”文件中正确添加了依赖项:

<dependency>
    <groupId>org.webjars</groupId>
    <artifactId>select2</artifactId>
    <version>3.4.5</version>
</dependency>

对我来说,看起来Tomcat7正在将应用程序部署为servlet版本2.5,一旦select2.jar中的文件没有被公开暴露。

有人知道我是否需要更多配置?你能看到什么问题吗?

1 个答案:

答案 0 :(得分:2)

两种可能的想法:

有一个拼写错误:

<mapping path="/resources/*" exclue="true"/>

应该是exclude而不是exclue

也许您的sitemesh3.xml排除在:

<mapping path="/webjars/*" exclude="true"/>