更改URL请求映射时,JSP找不到资源
我有一个运行良好的SpringMVC JSP,部署到Jetty。它包含许多从战争中加载的脚本、css等。我正在Chrome最新版本中测试它 我的上下文根被定义为/MYFIRM/myapplication 现在我们有一个业务需求,需要将一些但不是全部JSP映射到/MYFIRM/admin/myapplication/(添加管理部分) 所有这些JSP都在一个控制器中,我在其中添加了更改URL请求映射时,JSP找不到资源,jsp,spring-mvc,jetty,Jsp,Spring Mvc,Jetty,我有一个运行良好的SpringMVC JSP,部署到Jetty。它包含许多从战争中加载的脚本、css等。我正在Chrome最新版本中测试它 我的上下文根被定义为/MYFIRM/myapplication 现在我们有一个业务需求,需要将一些但不是全部JSP映射到/MYFIRM/admin/myapplication/(添加管理部分) 所有这些JSP都在一个控制器中,我在其中添加了 @Controller @RequestMapping("/admin") 现在,页面源加载正常,但找不到脚本和其他
@Controller
@RequestMapping("/admin")
现在,页面源加载正常,但找不到脚本和其他资源
资源的定义如下:
和
当我查看页面源代码时,它在资源URL中有admin
现在,我尝试将资源映射添加到servlet xml中
<mvc:resources mapping="/admin/js/**" location="/js/" />
<mvc:resources mapping="/admin/css/**" location="/css/" />
但这是行不通的。事实上,当我查看页面源时,管理员已经不在了,当我单击嵌入在页面源中的URL时(管理员被正确删除),它会在浏览器窗口中加载正确的资源
但是当我查看开发人员控制台时,它仍然在URL中显示admin,并给我一个错误
我已经尝试将我的资源移动到一个名为admin的新的子目录中,这是可行的,但是还有其他问题
有人知道我可能遗漏了什么吗?我也有同样的问题(部署在Tomcat上的web应用程序)。对我有用的是将静态资源添加到web.xml中
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
违约
*.css
注意,默认值意味着默认servlet应该处理静态资源。谢谢您的建议。这对我们的Jetty部署不起作用,但我相信Tomcat用户会从您的回答中受益