2017-02-20 220 views
0

我有很多頁面的.jsp,我想指定的上下文和CSS/JS版本在我所有的頁面是這樣的:在所有JSP頁面設置可變

<c:set var="version" value="0.0.1" /> 
<c:set var="path" value="${pageContext.request.contextPath}" /> 

<link type="text/css" rel="stylesheet" href="${path}/resources/css/foo.css?v=${version}"> 

如何設置我的所有JSP頁面只有一次path變量和我的自定義變量version

+0

把它放在一個包含的JSP文件中,並設置爲請求範圍? –

+0

@DaveNewton,我必須將這個文件包含在我所有的jsp頁面中? – Youssef

+0

如果你想這樣做,是的。通過過濾器將其加入會話的想法是一種更清潔的解決方案,但這取決於您的需求。不過,我認爲你已經分裂了你的CSS。 –

回答

0

如果你想他們是由連重定向和等畢竟JSPS訪問,你應該讓他們會話範圍,所以他們不會「死」每個請求後,只要將生活作爲用戶的會話生命:

<c:set var="version" value="0.0.1" scope="session" /> <c:set var="path" value="${pageContext.request.contextPath}" scope="session" />

+0

和我把這個?在jsp文件中,我將它包含在所有的jsp頁面中? – Youssef

+0

是的,但只有當這個頁面作爲第一個被執行時,否則你可能想實現一些[filter](https://tomcat.apache.org/tomcat-5.5-doc/servletapi/javax/servlet/Filter。 html)並在那裏設置變量,或者在servlet中使用'request.getSession()。setAttribute(String s,Object value);' –