2016-04-20 2 views
0

私は埋め込みJettyを使用してHTTP/2を実装しています。現時点では、ServerSessionListener(:org.eclipse.jetty.http2.api.Session.Listener.Adapter)をサーバーに追加しようとしています。Jetty http/2サーバーにServerSessionListenerを追加します

これをコンテキストとサーバーに追加しようとしました。これは、成功しなかったaddEventListenerです。

たぶん誰かが私が間違ってやっているかについてのヒントを与えることができます。..

を私が接続しているセッション(クライアント)とその接続時間を追跡するために、私のHTTP2接続にセッションリスナーを追加します。

よろしくお願いいたします。

+0

あなたがやっていることと達成したいことは明確ではありません。あなたのコードを投稿してください。 – sbordet

+0

私はセッションIDを保存でき、このセッションIDでユーザーが要求/応答した内容を確認できます。 – ekul

+0

HTTP/2にはセッションIDの概念がないため、この「セッションIDで要求/応答」が何を意味するかはまだ分かりません。 – sbordet

答えて

1

次の例のように、コネクタ自体にBeanとしてConnection.Listenerの実装を追加することができます。

http2Connector.addBean(new Connection.Listener() 
{ 
    public void onOpened(Connection connection) { ... } 

    public void onClosed(Connection connection) { ... } 
}); 

はまた、あなたがConnectionFactoryにBeanとしてConnection.Listenerを追加することができます。

いずれの場合も、接続が作成されるたびに、リスナーが接続に追加され、接続の開始時および終了時に呼び出されます。

既に接続についての統計情報を収集しており、すでにConnection.Listenerを実装しているJettyのConnectorStatisticsクラスを使用できます。

+0

ありがとうございます!もう1つの質問。このリスナーをHTTP2Clientに追加することは可能ですか? – ekul

+0

現在はありませんが、私は[この問題](https://github.com/eclipse/jetty.project/issues/542)を提出して実装しました。寄付を歓迎します。 – sbordet

関連する問題