javascript - Spring 框架——未找到 JavaScript 文件的映射

标签 javascript java spring spring-mvc

当我加载 JSP 时,我遇到了一个奇怪的错误。 Spring 是一个 Java 框架,那么为什么我需要 JavaScript 文件的映射呢?我页面中的 JavaScript 无法正常工作。

org.springframework.web.servlet.PageNotFound.noHandlerFound No mapping found for HTTP request with URI [/ghs1986/js/javascript.js] in DispatcherServlet with name 'ghs1986'

就其值(value)而言,这是我的 applicationContext.xml。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-4.3.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd">
    <mvc:annotation-driven />

    <mvc:resources location="WEB-INF/pages/images/" mapping="/images/**" />

    <mvc:view-controller path="/" view-name="home" />

    <bean id="viewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/pages/" />
        <property name="suffix" value=".jsp" />
    </bean>

这就是我尝试访问 JSP 中的 JavaScript 的方式。

<script type="text/javascript" src="js/javascript.js"></script>

这是我的 web.xml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE xml>
<web-app version="4.0"
        xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
          http://java.sun.com/xml/ns/javaee/web-app_4_0.xsd">
    <display-name>Granada High School Class of 1986</display-name>

    <servlet>
        <servlet-name>ghs1986</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>ghs1986</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

    <welcome-file-list>
        <welcome-file>home.jsp</welcome-file>
    </welcome-file-list>
</web-app>

最佳答案

与您拥有映射以允许 Spring Controller 了解图像的方式大致相同

<mvc:resources location="WEB-INF/pages/images/" mapping="/images/**" />

您需要添加类似的映射以让它了解您的 javascript 文件。比如,

<mvc:resources location="WEB-INF/pages/js/" mapping="/js/**" />

这两种情况的问题都是一样的,Spring 的前端 Controller 不知道如何找到你的 js 文件。

关于javascript - Spring 框架——未找到 JavaScript 文件的映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46386615/

相关文章:

javascript - 理解(误解?)JavaScript 中基于原型(prototype)的类

java - 如何制作自定义网址,例如 mywebsite.com/movie_title 而不是 mywebsite.com/movie?id=9282

java - Minecraft retrofit : Mod works only in IDE but not when exported as jar

java - 无法上传超过 10 秒的视频文件 - 无法对未保存的 ParseFile 进行编码

spring - 在 Spring 环境中仅模拟选定的属性

Spring REST - 必须至少有一个 RequestParameter

spring - 在 Spring Boot 中使用自定义 token 进行身份验证

javascript - 意外的标记名称 «i»,预期的 punc «;» UglifyJS 中的bundle.js 中出现错误

javascript - javascript中以下内容是什么意思? ! !"false"

javascript - 如何检查对象是否是 jQuery Xhr 对象