我在application.yml中有这个配置
server:
contextPath: /appname
session:
timeout: 7200 # 2 hours in seconds
当我在Intellij IDEA中运行时,这工作正常,但是当我将构建.war文件部署到tomcat实例时,这将被忽略 . 这是一个错误还是预计不会像这样工作?
此外,我似乎无法找到可以在application.yml中编写的内容的规范 . 有谁知道这可以找到的地方?
application.groovy配置文件怎么样?似乎找不到这个规格?
我的环境:
-
Grails版本:3.2.8
-
Gradle版本:3.4.1
-
Intellij IDEA版本:2017.1.2
-
Tomcat版本:8.0.26 JDK版本:1.8.0_45
1 回答
将Grails 3应用程序部署到独立的tomcat应用程序时,不应使用springboot
server.session.timeout
配置属性 . 它只适用于嵌入式服务器 .要在SpringBoot应用程序中配置会话超时(Grails 3应用程序构建在SpringBoot应用程序之上),部署到独立的tomcat中,您有两种选择:
A) 该tomcat实例中部署的每个应用程序的超时 .
您可以直接在tomcat配置文件中编辑会话超时:
寻找块:
B) 您可以在Grails 3应用中添加web.xml文件,其中包含每个应用所需的超时时间 .
使用以下内容在路径'src / main / webapp / WEB-INF / web.xml'中创建文件: