2011-12-22 10 views

答えて

1

待機時間が短い場合は、フィルタを使用してみます。あなたはそれのinitメソッドでは、あなたのインターフェースデバイスを確認することができます
http://www.oracle.com/technetwork/java/filters-137243.html
http://docs.oracle.com/javaee/5/tutorial/doc/bnagb.html
を参照してください。 doFilterメソッドで何もする必要はありません。

+0

ここは新しいですね。私はこの後にそのコードを持っていた。 – rickz

+0

アイデアありがとう。これは、依存システムが1時間以上到達できない可能性があるため、このケースでは機能しません。 SLAにより、当社のシステムはその期間オンラインになることはできません。 – Reusable

+0

ダウンタイムの間に、ユーザーがwepアプリを閲覧するときに何をしたいですか? 404 Not Foundエラーメッセージ? – rickz

1

これを行う1つの方法は、httpコネクタに関連付けられたスレッドプールのサイズをゼロ(minSpareThreads)に設定し、JMXを使用してより高い値に設定することです。

ちょうど理論 - それがうまくいくかどうかはわかりません。

もう一つの選択肢は、JMX経由で起動/停止する機能を使用してコネクタを拡張することです。

この記事では、JMXを使用してコネクタを停止/起動する方法についても概説します。 http://java-monitor.com/forum/showthread.php?t=169

+0

ありがとうございました。私はすぐにそれらにしようとしている! – Reusable

+0

コードは正常に実行され、MBeanServerを見つけることができます。不思議なことに、サーバーは、行の後でも別のブラウザーからポート9090を聞くことができます。mbeanServer.invoke(objectName、 "stop"、null、null); – Reusable

+0

私はこのフォームjconsoleを達成することができました。このオブジェクトに移動します。「Catalina:type = Connector、port = 8080」と呼び、stopを呼び出します。私がそれをしたら、私はtelnetを使って8080に接続できません。 – gkamal

-1
public class TestFilter implements Filter { 
    public void init(FilterConfig config) throws ServletException{ 
        System.out.println("init of TestFilter"); 
        // Make sure all other interfacing device is online here. 
    } 
    public void destroy(){}   
    public void doFilter(ServletRequest req,ServletResponse resp,FilterChain chain) 
    throws ServletException, IOException { 
        chain.doFilter(req,resp); 
    } 
} 
関連する問題