我在Tomcat的context.xml
文件的<Context>
節點內提供<Parameter name="javax.servlet.context.tempdir" value="${catalina.base}/my_temp" override="false"/>
。Tomcat 7設置的javax.servlet.context.tempdir的值不受RichFaces 4.2.2Final
我知道這是被人看見在服務器啓動時,因爲此日誌消息:
INFO: Creating LRUMap cache instance using parameters: {javax.servlet.context.tempdir=D:\{omitted}\tmp0\my_temp, org.richfaces.resourceMapping.enabled=true, javax.faces.PROJECT_STAGE=Development, javax.faces.SKIP_COMMENTS=true}
然而,在RichFaces的跨過代碼FileUploadFacesContextFactory.getTempFilesDirectory()
方法,以servletContext.getAttribute("javax.servlet.context.tempdir")
通話(其中servletContext
是org.apache.catalina.core.ApplicationContextFacade
實例時)給出值D:\{omitted}\tmp0\work\Catalina\localhost\_
。
我在印象中(從Tomcat Docs on context parameters)設置override="false"
應該讓任何應用程序不能爲此參數提供替代值。
這是預期的行爲?我的配置錯誤?
我一直對修改價值的想法感到不舒服,但感到我被迫(因爲在我的一個早期試驗期間該目錄不存在)。我現在知道我有其他選擇。感謝您澄清''節點的意圖,克里斯托弗。 –
2012-07-31 14:53:30