【发布时间】:2021-01-16 13:19:08
【问题描述】:
我一直在将旧的 Spring 4.x 应用程序转换为在 Spring Boot 2.x 上运行。此应用程序包含存储在 WAR 的“/WEB-INF/tiles”目录中的 JSP。
当我在本地运行应用程序(使用 IntelliJ 2018.3)时,服务器启动,但是当我尝试点击本地登录页面(“/devlogin”)时,我得到一个 404 未找到。在我的调试堆栈中,我设法找到了这个打印输出:
DEBUG o.a.j.s.JspServlet - JspEngine --> /WEB-INF/tiles/devlogin.jsp +[] #[]
DEBUG o.a.j.s.JspServlet - ServletPath: /WEB-INF/tiles/devlogin.jsp +[] #[]
DEBUG o.a.j.s.JspServlet - PathInfo: null +[] #[]
DEBUG o.a.j.s.JspServlet - RealPath: C:\Users\LBlack\AppData\Local\Temp\7\tomcat-docbase.8622225261320704348.8080\WEB-INF\tiles\devlogin.jsp +[] #[]
当我转到“RealPath”时,我发现\tomcat-docbase.#\ 文件夹是空的,所以我手动复制粘贴到我的/WEB-INF/ 文件夹中并重新加载浏览器,它就可以工作了!
现在我的问题是,如何让 IntelliJ 或 Tomcat 自动将 WEB-INF 部署到该位置?除了 Spring Boot 配置设置中允许的内容之外,我没有使用任何直接配置的 tomcat。有什么我可以添加到application.yaml,或者这是一个 IntelliJ 运行设置?
谢谢。
【问题讨论】:
标签: spring-boot tomcat intellij-idea embedded-tomcat-7