Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot 在部署到外部tomcat时解析Spring boot Web应用程序中的模板时出错_Spring Boot_Spring Mvc_Spring Security_Thymeleaf_Tomcat9 - Fatal编程技术网

Spring boot 在部署到外部tomcat时解析Spring boot Web应用程序中的模板时出错

Spring boot 在部署到外部tomcat时解析Spring boot Web应用程序中的模板时出错,spring-boot,spring-mvc,spring-security,thymeleaf,tomcat9,Spring Boot,Spring Mvc,Spring Security,Thymeleaf,Tomcat9,我有一个SpringBootWeb应用程序 从IDE启动时运行良好(我使用的是Spring工具套件) 当我部署到外部tomcat时,它会在所有地方显示错误。 当我从IDE运行它时,我使用 当我从外部tomcat运行它时,我使用 挑战在于,我甚至无法从外部Tomcat中正确填充样式,因为从嵌入式Tomcat服务器运行时一切正常 解析模板[文件夹/页面]时出错,模板可能不存在,或者任何已配置的模板解析程序都无法访问该模板 配置中是否缺少某些内容? 简言之,我可以说, 当我使用War名称作为应用程

我有一个SpringBootWeb应用程序 从IDE启动时运行良好(我使用的是Spring工具套件) 当我部署到外部tomcat时,它会在所有地方显示错误。 当我从IDE运行它时,我使用

当我从外部tomcat运行它时,我使用

挑战在于,我甚至无法从外部Tomcat中正确填充样式,因为从嵌入式Tomcat服务器运行时一切正常

解析模板[文件夹/页面]时出错,模板可能不存在,或者任何已配置的模板解析程序都无法访问该模板

配置中是否缺少某些内容? 简言之,我可以说, 当我使用War名称作为应用程序根上下文时,我的应用程序似乎失败了 在返回视图时,是否必须在控制器中提及war名称?
如果是的话,怎么办?我已经尝试过了,但没有成功

如果您希望在将应用程序部署到外部Tomcat时具有相同的行为(
/login
而不是
/webapp/login
),则应配置上下文路径

实现这一点有多种方法:

  • 将您的
    .war
    文件命名为
    ROOT.war
    并将其放置在
    webapps
    目录中
  • 遵循此问题的不同观点:

  • 您能添加完整的错误/异常/堆栈跟踪吗?感谢您的响应,我通过执行步骤1成功地使其工作。奇怪的是,它在windows上工作,但在Linux上不工作,(看起来tomcat找不到已部署和已分解的war)正在为windows进行修复听到这个消息很好,您能将这个答案标记为正确吗,那么将来的其他开发者会从中受益吗?关于Linux上的差异,您可能会提出一个关于StackOverflow的新问题