我們正在從我們的JSP頁面生成CSS
和JavaScript
文件的鏈接。這些CSS和JS文件組織在區域設置特定文件夾。現在,我們需要從下載文件,以防萬一請求的文件在指定的位置不可用(用於加載資源包的類似方法 - 如果特定於語言環境的Bundle不可用,則默認使用一個)。 你能否建議一種方法來實現這一點?從回退位置下載文件
1
A
回答
2
您可以讓一個servlet處理獲取特定於語言環境的文件。該servlet映射到像「/ yourApp/localeFile」一個URL,並用它在你的JSP中,如:
<script src="/yourApp/localeFile?name=something.js&locale=en_US">
該servlet會讀,並返回語言環境的文件的內容,如果它存在。如果找不到該文件,它將返回回退語言環境文件的內容。
另外,也許你可以做一些事情,如有服務器的語言環境目錄404處理程序返回後備文件。
+0
這是資源管理器的工作原理嗎?我想實施相同的機制。 – Apps
0
如果您使用jsp-api-2.0,您可以編寫標籤文件,否則您只能使用概念。
在JSP創建/WEB-INF/tags/file.tag
<%@tag import="java.io.File"%>
<%@ taglib tagdir="/WEB-INF/tags" prefix="g" %>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
<%@ attribute name="path" required="true" type="java.lang.String" rtexprvalue="true"%>
<%@ attribute name="file" required="true" type="java.lang.String" rtexprvalue="true"%>
<%
final PageContext pc = (PageContext) getJspContext();
final String lang = request.getLocale().getLanguage();
final String prefered = pc.getServletContext().getRealPath(path + "/" + lang + "/" + file);
final File file = new File(prefered);
if (file.exists()) {
pc.setAttribute("fileToUse", path + "/" + lang + "/" + file);
} else {
pc.setAttribute("fileToUse", path + "/" + file);
}
%>
${fileToUse}
添加
<%@ taglib tagdir="/WEB-INF/tags" prefix="g" %>
,那麼你可以使用它作爲
<script type="text/javascript" src='<g:file file="myfile1.js" path="/js" />'></script>
<script type="text/javascript" src='<g:file file="myfile2.js" path="/js" />'></script>
假設你有webapp/js,webapp/js/en ...文件夾。
相關問題
- 1. xap文件下載位置
- 2. 下載從http位置的文件,我得到以下錯誤
- 3. 選擇文件下載位置
- 4. JBoss中可下載文件的位置?
- 5. IOS下載文件的位置
- 6. IE文件下載框獲取位置
- 7. 地理位置回退
- 8. 如何從佔位符下載文件
- 9. 隱藏下載文件位置。 - 重定向下載
- 10. 從外部位置加載JSP文件
- 11. 使用進度條從遠程位置下載多個文件
- 12. 如何通過HTTP從多個位置下載單個文件?
- 13. 如何製作客戶端,從原始位置下載文件?
- 14. 從c#中的共享保管箱位置下載文件
- 15. 無法從遠程位置下載exe文件
- 16. 使用python腳本從FTP位置下載目錄/文件
- 17. Mule無法從SFTP位置下載文件
- 18. Java:使用sftp從遠程位置下載文件
- 19. 如何使用nodejs從項目/特定位置下載文件?
- 20. Inno Setup根據用戶輸入從位置下載文件
- 21. 從Strongloop環回下載文件
- 22. 從字節返回文件下載[]
- 23. APK的文件位於android下載位置?
- 24. 回發文件下載
- 25. 下載csv文件迴環
- 26. 文件下載回撥
- 27. HtmlUnit設置下載位置
- 28. 從我的res/raw文件夾下載(複製?)一個文件到默認的Android下載位置?
- 29. Android WebView設置下載文件夾位置
- 30. 在Rails 5中放置可下載文件的正確位置
您是否使用apache作爲靜態內容的前端服務器? – Santosh
我正在使用IBM HTTP Server。我認爲它建立在Apache之上 – Apps