2015-04-23 69 views
2

我對這種情況感到瘋狂。環境是CentOS Linux 7.0.1406版本下的Jboss-as-7.1.1。c:url標記在連續行之間給出不同的結果

這是代碼(僅僅是一塊,露出我的情況):

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 

<link rel="stylesheet" type="text/css" href="<c:url value="/assets/css/styles.css" />" /> 
<link rel="stylesheet" type="text/css" href="<c:url value="/assets/css/checkbox.css"/>" /> 

<c:set var="urlImgLoadingGIF"><c:url value="/img/ajax-loader.gif"/></c:set> 
<c:set var="urlImgLoadingGIF2"><c:url value="/assets/css/checkbox.css"/></c:set> 

<script type="text/javascript"> 

var urlImgLoadingGIF = "${urlImgLoadingGIF}"; 
var urlImgLoadingGIF2 = "${urlImgLoadingGIF2}"; 

</script> 

這是輸出:

<link rel="stylesheet" type="text/css" href="/assets/css/styles.css;jsessionid=AQvp3fDjrDIOArTZebuDllp1.undefined"> 
<link rel="stylesheet" type="text/css" href="/assets/css/checkbox.css;jsessionid=AQvp3fDjrDIOArTZebuDllp1.undefined"> 

<script type="text/javascript"> 
var urlImgLoadingGIF = "/seuapb/img/ajax-loader.gif;jsessionid=AQvp3fDjrDIOArTZebuDllp1.undefined"; 
var urlImgLoadingGIF2 = "/seuapb/assets/css/checkbox.css;jsessionid=AQvp3fDjrDIOArTZebuDllp1.undefined"; 
</script> 

爲什麼在CSS鏈接,將C:URL標記做沒有渲染上下文(/ seuapb /),並且在它執行後有一行?

我在開發環境中有tomcat,這個不會發生,c:url標記的行爲在所有文檔中都是一致的。

預先感謝您。

回答

0

最後,經過多次測試,我們得出結論,一些工藝(可能是內部的Apache HTTP服務器)正在修改一些網址。由於href和src屬性中的URL沒有被修改,我們決定放置一些隱藏的html錨點,並在href屬性中添加我們想要的url,然後使用javascript獲取它。

我知道這是一個非常奇怪的情況,但如果某人的價值,這是一個可能的解決方案。

很明顯,我們也可以檢查Apache服務器,但客戶已經安裝了它,並且首選修改我們的應用程序,因爲出現此問題的URL相對較少。