2012-01-05 15 views
3

私はJboss Nettyを使用して実装されたネットワークサーバを持っています。 これは、生のTCPとHTTPの両方でアプリケーションを処理し、スタンドアロンプ​​ロセスとして実行します。 TCPに接続されているクライアントは、HTTPに接続されたクライアントにデータを転送することができます。サーブレットコンテナ内のNettyベースのサーバ

サーブレット環境で動作させる必要があります。 nettyは標準的な方法を提供していますか、アダプタを作成する必要がありますか? TCPトランスポートで何ができますか?それをサーブレットコンテナに含めることはできますか?

thisは同様の質問ですが、明確な答え

+0

Netty実装はすでにHTTPを処理していますか?それとも、今のところ生のTCP接続を処理するだけですか?両方がすでに処理されている場合、なぜサーブレットコンテナが必要ですか? – AngerClown

答えて

2

せずにあなたの既存の網状の実装にリンクHttpTunnelingServletを作成することができます。 org.jboss.netty.channel.socket.http APIドキュメントをご覧ください。

このドキュメントでは、Spring beanを使用してNettyの設定を行います。しかし、構成とセットアップをServletListenerに移動するだけで十分です。セットアップがサーブレット設定で指定されたLocalAddressに接続する必要があるので、これがうまくいくかどうかは100%確信していません。この問題は、サーブレットが起動するまでアドレスが有効でないことが原因である可能性があります。別の選択肢は、HttpTunnelingServletをサブクラス化し、init()の実装に追加することです。

どのような方法を使用しても、以前と同じようにTCPチャネルなどをセットアップして起動する必要があります。

関連する問題