1. 程式人生 > >使用 EhCache 關於臨時目錄的一個注意事項

使用 EhCache 關於臨時目錄的一個注意事項

一般 ehcache 的配置中預設的 diskStore 的路徑設定的是 java.io.tmpdir ,等於是當前系統的臨時目錄。

但是在 Tomcat  和 Resin 這兩個應用伺服器上,臨時目錄是有區別的,在 Tomcat 上執行的應用通過 java.io.tmpdir 系統變數獲取到的路徑是 Tomcat 目錄下的 temp 子目錄,而 Resin 返回的是系統的臨時目錄,linux下可能就是 /tmp

在 Linux 下如果我們使用的是 root 賬號來啟動 Tomcat 和 Resin 的話,那這個問題就不存在。但是我們非常不建議用 root 來啟動 Tomcat 和 Resin,這時候我們會單獨的建立一個非特權賬號,假設該賬號名為 www 來執行應用伺服器。

我們需要將 Tomcat 和 Resin 所在的目錄授權給 www 賬號,這樣應用伺服器的日誌檔案才能正常的寫入,但是由於 Resin 的臨時目錄是對應系統的 /tmp 目錄,因此如果應用中使用了 ehcache 並設定了儲存路徑為 java.io.tmpdir ,你就會發現啟動的時候報錯,提示沒有在 /tmp 目錄下建立檔案的許可權,這是因為 www 賬號沒有寫 tmp 目錄的許可權。

解決的辦法就是修改 ehcache 的 diskStore 配置的值為  user.home ,將儲存檔案路徑指定到使用者的主目錄下即可。

而 Tomcat 就沒有這個問題,因為它的臨時目錄在 {tomcat}/temp ,而整個 {tomcat} 都已經授權給 www 賬號了。

相關推薦

使用 EhCache 關於臨時目錄一個注意事項

一般 ehcache 的配置中預設的 diskStore 的路徑設定的是 java.io.tmpdir ,等於是當前系統的臨時目錄。 但是在 Tomcat  和 Resin 這兩個應用伺服器上,臨時目錄是有區別的,在 Tomcat 上執行的應用通過 java.io.tm

Java中物件流使用的一個注意事項

再寫jsp的實驗作業的時候,需要用到java中物件流,但是碰到了之前沒有遇到過的情況,改bug改到崩潰!!記錄下來供大家分享 如果要用物件流去讀取一個檔案,一定要先判斷這個檔案的內容是否為空,如果為空的話,就是連物件流的例項物件也不要建立,一建立就會報錯。 錯誤程式碼例項: public stat

關於STM32定時器使用的一個注意事項(以此為前車之鑑,重要!)

    我們平時使用定時器的時候多數都是處於開啟狀態,平時的定時中斷書寫格式一般是: void TIM3_IRQHandler(void) {if(TIM_GetITStatus(TIM3, TIM_IT_Update) == SET){TIM_ClearITPending

配置Apache Kafka的zookeeper配置檔案zookeeper.properties時的一個注意事項

我使用Apache Kafka的版本是0.7.2 Kafka預設的zookeeper.properties檔案如下所示: dataDir,clientPort的意義顯而易見,就不用說了,對於maxClientCnxns選項,如果不設定或者設定為0,則每個ip連線zook

Hadoop使用ByteWritable時的一個注意事項

今天使用ByteWritable時候遇到了問題,浪費了好多時間,最後通過檢視ByteWritable的原始碼才解決這個問題。分享一下,希望能幫助別人節約點時間。 自己寫了一個類繼承了RecordReader<IntWritable, BytesWritable>

8167板子配置sys/bios的一個注意事項

    在8167的dsp上,準備呼叫Timestamp_get64()函式統計效率,需要配置sys/bios以載入timestamp模組。 首先,在原工程添加了cfg檔案,如圖 對內容進行配置後,測試得到的時間,比印象中長了許多。 後來檢查工程property,一直提示

【學習筆記】彙編:關於DEBUG工具使用的時候的一個注意事項

在學習彙編的時候發現一個簡單的程式碼出現了一個奇怪的問題詢問過後發現了DEBUG工具的一個小注意事項(或者說是沒用的知識點)ASSUME SS:STACKS,CS:CODES,DS:a,ES:b a SEGMENT ONE dw 01h,02h,03h,04h,05

QTemporaryDir及QTemporaryFile建立臨時目錄及文件夾(創建一個隨機名稱的目錄或文件,兩者均能保證不會覆蓋已有文件)

接口 函數 dir 說明 文件的 removes pen cto path 版權聲明:若無來源註明,Techie亮博客文章均為原創。 轉載請以鏈接形式標明本文標題和地址:本文標題:QTemporaryDir及QTemporaryFile建立臨時目錄及文件夾 本文地址

將模板檔案保持原目錄,呼叫標籤__TMPL__/portal/ images、模板檔案注意事項

  1、放置模板檔案 __TMPL__/portal/ images  :批量替換路徑 __ROOT__ 網站根目錄  這樣就可以原模板目錄結構不變,呼叫非常方便,快速實現模板製作 模板注意事項:模板檔案必須配合一個json檔案,不然預設在後臺選擇時

從零開始使用vue-cli搭建一個vue專案及注意事項

一、安裝node.js   1.根據電腦的自行下載node.js安裝包http://nodejs.cn        2.點選安裝,按照正常的的一路點選下去   3.驗證安裝是否成功,按鍵win+r,輸入cmd開啟命令列工具,點選確認後再輸入node -v 出現版本好說明npm安裝成功  

web專案開發下WEB-INF目錄使用的注意事項

在web專案中,為了安全,可能需要把jsp、html等頁面檔案放在WEB-INF目錄下,這樣如果我們的頁面中出現超連結<a>標籤或者<script></script>指令碼下的location.href去直接轉向到WEB-INF下的某一個jsp或者html頁面,那

vue之watch監聽物件或者一個值時注意事項(深度觀察deep:true慎用!)

vue中想在某個值改變的時候能夠做一些其他事情,可以使用其提供的監聽機制,使用watch。注意,本篇不講技術問題,只是講解如何應用,因為筆者也是一個前端的小白 例:經手專案中就有使用,截圖如下: 下面來分析上面分別是怎樣實現監聽的: 其實除了畫紅線的地方,別的都沒什

一個程式設計師的總結——開發注意事項

    一年到頭了,作為本命年的我,今年發生了太多的事情,但是不幸的是,都是好事兒,有點太過得意洋洋了,不過,不管一年順抑或不順,都是需要總結的,畢竟,總結,才能讓人成長,首先,想注意的事情就是開發注意事項。     特別想說一件事情,公司每個功能上線之前都要測試,在測試環

一個資深HR的忠告:用郵箱發簡歷的注意事項

近兩個月來,由於工作關係,前前後後應該閱讀了1千多份(都是通過電子郵箱接收的)求職簡歷了吧。在這些簡歷中,有我非常喜歡的,也有我一眼看上就想刪除的。下面,我就先總結一下這批簡歷中存在的一些問題,然後再提出我自己的一些意見。 存在的問題: 1、郵箱命名不妥。如:有簡歷將自己的

java new File建立檔案或目錄時的注意事項

1, 如下程式碼所示 File dir = new File("root"); File f1 = new File("root"); // 檔案物件建立後,指定的檔案或目錄不

linux中級進階01--linux分割槽的注意事項,特殊目錄,pwd,mkdir命令再次介紹以及執行檔案路徑的變數: PATH

1.不可與根目彔(/)放置到不同的 partition 中的目錄。   /etc(配置檔案), /bin(一般身份可用執行檔案)   /dev(裝置檔案)   /lib(執行檔的函式庫或核心模組等)    /sbin(系統管理員可用指令) 2.根目彔要小一點比較好   /home, /usr, /var,

iOS 吧一個控制器的vie我新增到另外一個控制器中的注意事項

兩個控制器,一個是FirstViewController,一個是SecondViewController,如果要在FirstViewController上新增SecondViewController,則在FirstViewController中,SecondViewContr

一個FragmentTransaction中進行多個操作時的注意事項

在一個FragmentTransaction中進行多個操作時要注意一些事情: 比如在一個FragmentTransaction中先後執行以下操作: 1. add一個Fragment 2. hide這個Fragment 3. show這個Fragment

Java中使用JSON進行parse操作時一個重要的注意事項

最近在寫一個Android專案,其中包含了客戶端與服務端的通訊。通訊使用了JSON來包裝傳輸的資料,當在客戶端試圖解析從服務端得到的String時,解析出來的Class裡的成員變數的值總是null,調了一整天脾氣都調沒了。 結論如下: 假設要解析的類為User,定義如下:

給定一個數字列表,返回其所有可能的排列。 注意事項 你可以假設沒有重複數字。

Lintcode 15 全排列給定一個數字列表,返回其所有可能的排列。 注意事項你可以假設沒有重複數字。思路:思路:n個數字額全排列等於將最後一個數字k插入前n-1個數的全排列中,這就是遞迴思想int型別的nums陣列作為輸入1.當只有一個數時輸出這個數的排列2.否則將這個n