2008-09-05 76 views
5

有誰知道是否有可能重啓J2EE應用程序(從應用程序)?如果是這樣,怎麼樣?你能以編程方式重新啓動一個j2ee應用程序嗎?

我希望能夠以app-server-agnostic的方式做到這一點,如果可能的話。

該應用程序將在許多不同的應用程序服務器上運行 - 基本上無論客戶端喜歡什麼。

如果不可能以應用程序服務器無關的方式進行此操作,那麼對我而言這可能並不值得。我總是可以顯示一條消息,通知用戶他們將需要手動重新啓動應用程序。

回答

5

我建議你不太可能找到一個appserver不可知的方式。雖然我不假裝知道你的要求,但我可能會質疑一個需要應用程序自身重新啓動的設計,而不是部署新版本的安裝程序。最後,我會建議,對於任何不平凡的目的,「任何」應用服務器都不起作用。您應該有一份支持的應用程序服務器和版本的列表,在發行說明中進行了說明,以便您可以測試所有這些應用程序,並且不必擔心在不符合要求的服務器/版本上支持客戶端。從經驗來看,例如Apache Tomcat和BEA WebLogic之間總是存在細微的差異,而這些差異通常是非文檔的,難以確定,直到遇到它們。

3

大多數應用程序服務器提供一個JMX接口,所以你可以調用它。

2

我建議使用servicewrapper來管理應用程序服務器,然後使用它的api方法來請求重新啓動服務。會涉及到一些配置,很難知道這是否適用於您的特殊環境,但是這是我知道的唯一解決方案,即使是合理的跨服務器兼容。

相關問題