2012-09-10 7 views
13

I年間のサーブレットとフィルタを書いてきたし、それはいつも私を少しうんざりしているものです - 特に標準的なHttpFilter基本クラスには存在しないようフィルタと、HttpServletRequestHttpServletResponseServletRequestServletResponseパラメータのチェックとキャストサーブレットとは異なり、あなたのためにこれを行います。HttpServletRequest/Response以外でjavax.servlet.Filter.doFilter(ServletRequest req、ServletResponse res)を呼び出すのはいつですか?

質問は、/HttpServletResponseがあなたのサーブレット/フィルタに渡されたとき、あなたは何をすべきでしょうか?

+1

JSFユーティリティライブラリOmniFacesには、['HttpFilter'](https://showcase-omnifaces.rhcloud.com/showcase/filters/HttpFilter.xhtml)があります。 – BalusC

答えて

12

実現していない世界では、HttpServlets以外のサーブレットタイプもあります。

+1

Word。何人かは、「いつかそれが必要になるかもしれない」アーキテクチャのアプローチと呼んでいます。トヨタでは「廃棄物」と呼ばれるものがあります。 – pap

+0

ありがとうございます - HttpServletの機能に基づいて独自のHttpFilterクラスを作成しました。誰かがWeb用の新しいプロトコルを開発したときに変更することについて心配しています。 – pauli

+2

@pauli新しいプロトコルを使う必要はありません。たとえば、FTPServletを想像することができます。 – EJP

0

サーブレットの仕様は、私がAPIを理解することから、サーブレットのフレームワークがHTTP/Web用に作成されていることです。

サーブレット仕様のリファレンスセクションに記載されているプロトコルはすべてHTTPのみに関連しています。
RFC 1945ハイパーテキスト転送プロトコル(HTTP/1.0)
RFC 2616ハイパーテキスト転送プロトコル(HTTP/1.1)
RFC 2617 HTTP認証:基本とダイジェスト認証
RFC 2324ハイパーテキストコーヒーポット制御プロトコル(HTCPCP/1.0)これはHTTP上でベースです

これらはすべてHTTPプロトコルです。 また

スペックの義務この:

すべてのサーブレットコンテナは、要求と応答のためのプロトコルとしてHTTPをサポートしている必要がありますが、 はまた、HTTPS(HTTP over SSLの)などの他の要求/応答ベースのプロトコルをサポートすることができます。

GenericServlet - > HttpServletを持つ理由は、APIのAPI構造内で、汎化 - >特殊化の種類の階層を持つためです。

関連する問題