Java Webアプリケーションをアプリケーション内で正しくシャットダウン(アンデプロイ)する方法を探しています。私はSystem.exit()を試してみましたが、これはwebAppをシャットダウンするだけでなく、Glassfishを駄目にします。適切なシャットダウンJava Webアプリケーション
私はコンテキストリスナーについて知っていますが、シャットダウン手順の開始方法は不思議です。
Java Webアプリケーションをアプリケーション内で正しくシャットダウン(アンデプロイ)する方法を探しています。私はSystem.exit()を試してみましたが、これはwebAppをシャットダウンするだけでなく、Glassfishを駄目にします。適切なシャットダウンJava Webアプリケーション
私はコンテキストリスナーについて知っていますが、シャットダウン手順の開始方法は不思議です。
通常の方法は、asadmin undeployコマンドを使用することです。
コマンドの一般的な形式は次のとおりです。戦争-nameに
as-install/bin/asadmin undeploy war-name
、リテラルこんにちは、ないフルはhello.war名を使用します。
はhello.warたとえば、コマンドは次のとおりです。
as-install/bin/asadmin undeploy hello
は、以下の参考文献を参照してください:あなたが使用することができ、プログラム的にアンデプロイするに
http://docs.oracle.com/cd/E19798-01/821-1757/geyvr/index.html
http://docs.oracle.com/docs/cd/E19798-01/821-1758/undeploy-1/index.html
をJSR-あなたがなぜこれをしたいのかという理由は本当にわかりませんが、アプリケーションは、他の方法でラウンドをコンテナによって管理されておらず、
Webアプリケーションのデプロイメントは、アプリケーションサーバーが行います。私はグラスフィッシュではどのように他のアプリが知っている。サーバー(JBoss、Tomcatなど)には、これを可能にするWebベースの管理アプリケーションがあります。
アプリケーション自体からアプリケーションをプログラムでアンデプロイする場合は、JMXを使用できます。どのBeanを呼び出すかを知るには、glassfish JMXの実装を参照してください。しかし、IMHO私はあなたが本当にこれが必要とは思わない。
参照してください。あなたはコンテナ自体の作業をしようとしていますが、ポータブルな(そして安全な)ソリューションはほとんどありません。ほとんどの場合、コンテナ固有のクラスを使用する必要があります。コンテナ固有のクラスは、そのようなクラスを呼び出すことができる限り、使用する必要があります。 –
なぜアプリケーションをアンデプロイしようとしていますか? – Paul