更改URL请求映射时,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") 现在,页面源加载正常,但找不到脚本和其他

我有一个运行良好的SpringMVC JSP,部署到Jetty。它包含许多从战争中加载的脚本、css等。我正在Chrome最新版本中测试它

我的上下文根被定义为/MYFIRM/myapplication

现在我们有一个业务需求,需要将一些但不是全部JSP映射到/MYFIRM/admin/myapplication/(添加管理部分)

所有这些JSP都在一个控制器中,我在其中添加了

@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用户会从您的回答中受益