2017-08-22 56 views
0

我有一個web應用war是建立與spring-boot-starter-web和運行在tomcat8web.xml會話超時沒有考慮到春季啓動web應用程序?

只有一個應用程序,我想增加會話超時。因此增加了以下文件:

/src/main/resources/WEB-INF/web.xml

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
     http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
     version="3.1"> 

    <session-config> 
     <session-timeout>600</session-timeout> 
    </session-config> 
</web-app> 

但TTL會話超時仍然是默認的30分鐘。爲什麼?

+0

你需要一個限制嗎?爲什麼不把它徹底關掉?將其設置爲0。 –

+0

這只是一個例子。但我需要一個確定的限制。 – membersound

回答

1

在標準的Maven項目,在WEB-INF文件夾在src /主/ web應用,而不是放在src /主/資源。這個問題可能來自於此。

您檢查打包war文件的web.xml文件的位置。

你可以在這裏找到一個例子項目結構:https://github.com/spring-projects/spring-boot/tree/v1.5.6.RELEASE/spring-boot-samples/spring-boot-sample-traditional

+0

據我所知'服務器。*'性能上的*嵌入式的Tomcat運行時,僅適用*。這就是爲什麼文檔屬性主題是明確的'#EMBEDDED SERVER CONFIGURATION'。但我有一個戰爭文件,我部署到獨立的tomcat。 – membersound

+0

嗨,你能檢查,當您打包WAR文件的web.xml文件是正確的WEB-INF/web.xml文件包?因爲如果是這種情況,它應該起作用。在標準maven項目中,WEB-INF文件夾位於src/main/webapp中,而不在src/main/resources中。 你可以在這裏看到一個標準的spring-boot web項目:https://github.com/spring-projects/spring-boot/tree/v1.5.6.RELEASE/spring-boot-samples/spring-boot-sample-traditional – loicmathieu

+0

好抓!將文件移動到'/ src/main/webapp/WEB-INF/web.xml'解決了它!你能否相應地重寫你的答案,以便我能接受它? – membersound

相關問題