gpt4 book ai didi

javascript - 外部 javascript 不适用于 spring

转载 作者:行者123 更新时间:2023-11-28 08:26:14 24 4
gpt4 key购买 nike

我正在使用 spring 3 框架来开发我的 Web 应用程序。我必须将我的外部 javascript 文件与我的 jsp 表单链接起来。为此,我使用脚本标签,如下所示: <script type="text/javascript" src="test.js"></script>

我的 web.xml 映射如下:

`<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>*.js</url-pattern>
</servlet-mapping>`

但是我收到这样的错误:

Mar 13, 2014 4:54:01 PM org.springframework.web.servlet.DispatcherServlet noHandlerFound WARNING: No mapping found for HTTP request with URI [/Project/test.js] in >DispatcherServlet with name 'spring'

这是我的工作区结构。项目>>WebContent>>jsp

在 jsp 文件夹中,我拥有所有 jsp 和 test.js 文件。

我已经尝试过了 - 更改 web.xml 配置 - 尝试使用 test.js 获取上下文路径

<script type="text/javascript" src="${pageContext.servletContext.contextPath}/test.js"></script>
  • 尝试将 test.js 文件粘贴到不同的路径
  • 在 webcontent 中创建一个目录并粘贴 test.js 文件进行检查

    <script type="text/javascript" src="${pageContext.servletContext.contextPath}/jsp/test.js"></script>

我引用了很多相关的帖子,但到现在都无法解决。请有同样问题的人帮忙解决这个问题。

编辑这里我添加了我的 spring-servlet.xml 以供引用。

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

<context:annotation-config />
<context:component-scan base-package="com.inet.test.spring3.controller" />

<bean id="jspViewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/jsp/" />
<property name="suffix" value=".jsp" />
</bean>

最佳答案

您实际上不必定义 servlet-mapping 来包含外部 java 脚本文件。

删除

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

替换为

<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

配置您的@RequestMapping("/mycontroller.html")

通过提供/,您可以配置 spring 来处理传入应用程序的所有请求。在这种情况下,您没有正确的 .js 文件处理程序。

通过提供*.do,您将spring配置为仅处理仅以.do结尾的请求

关于javascript - 外部 javascript 不适用于 spring,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22378272/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com