我有一個Java EE應用程序,它採用XML並將XSLT應用於它以生成HTML。這個過程發生在一個自定義的servlet中。這通常用於在某些網頁上構建部分內容。由於實際數據已經以XML格式存儲,因此只需在servlet中進行轉換即可。在部署的Java EE應用程序中更新XSLT文件而無需重新部署?
這實際上是建模CruiseControl它是如何構建報告。該servlet緩存生成的HTML,以避免每次都產生轉換成本。代表XSL文件的DOM也被緩存在內存中。
現在XSLT部署在WAR文件中。我們希望支持部署在WAR文件中的默認XSLT,但也可以在不重新部署整個應用程序的情況下更新XSLT。我希望有些人可能會有一些好的想法來解決這類問題。
更新
從我收到我知道有一些服務器特定的方式來做到這一點的評論(縣)。但我希望以更通用的方式解決它。我需要確保我能夠記住以下功能...
- 一旦檢測到新的XSLT,(直到檢測到新的版本)緩存XSLT本身
- 保持的緩存版本生成的HTML,當有新的XSLT時更新它們。
嗯..我相信這個問題的答案可能是服務器特定的,因爲服務器如何組織部署(未存檔)的內容可能會有所不同。我知道,如果您在WebLogic服務器上使用.EAR進行部署,則這種功能是可能的。請參閱:http://download.oracle.com/docs/cd/E13222_01/wls/docs90/deployment/redeploy.html#1025739 – Kai 2011-03-27 23:24:05
@Kai我可以明白,有服務器特定的方式來取代WAR/EAR,但我希望以通用的方式解決這個問題。 – bconneen 2011-03-28 01:02:58
不是關於XSLT,而是Web應用程序部署。 Rettaging。 – 2011-03-28 15:54:08