public class DefaultServletHttpRequestHandler extends ObjectSE implements HttpRequestHandler, ServletContextAware
HttpRequestHandler
。 このハンドラーは、DispatcherServlet
が "/" にマップされるときに "/*" マッピングとともに使用されることを目的としているため、サーブレットコンテナーの静的リソースのデフォルト処理をオーバーライドします。このハンドラーへのマッピングは、通常、チェーンの最後として順序付けて、他のより具体的なマッピング(つまり、コントローラーへの)が一致しない場合にのみ実行されるようにする必要があります。
リクエストは、"defaultServletName" property
で指定された名前で取得された RequestDispatcher
EE を介して転送することで処理されます。ほとんどの場合、ハンドラーは Tomcat、Jetty、Resin、WebLogic、WebSphere などの既知のコンテナーのデフォルトサーブレットの存在を初期化時にチェックするため、defaultServletName
を明示的に設定する必要はありません。ただし、デフォルトのサーブレットの名前がわからないコンテナー、またはサーバー構成でカスタマイズされているコンテナーで実行する場合は、defaultServletName
を明示的に設定する必要があります。
コンストラクターと説明 |
---|
DefaultServletHttpRequestHandler() |
修飾子と型 | メソッドと説明 |
---|---|
void | handleRequest(HttpServletRequestEE request, HttpServletResponseEE response) 指定されたリクエストを処理し、レスポンスを生成します。 |
void | setDefaultServletName(StringSE defaultServletName) 静的リソースリクエストの転送先となるデフォルトのサーブレットの名前を設定します。 |
void | setServletContext(ServletContextEE servletContext) defaultServletName プロパティが明示的に設定されていない場合、は、既知の一般的なコンテナー固有の名前を使用してデフォルトのサーブレットを見つけようとします。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void setDefaultServletName(StringSE defaultServletName)
public void setServletContext(ServletContextEE servletContext)
defaultServletName
プロパティが明示的に設定されていない場合、は、既知の一般的なコンテナー固有の名前を使用してデフォルトのサーブレットを見つけようとします。ServletContextAware
の setServletContext
servletContext
- このオブジェクトによって使用される ServletContext オブジェクト InitializingBean.afterPropertiesSet()
, ApplicationContextAware.setApplicationContext(org.springframework.context.ApplicationContext)
public void handleRequest(HttpServletRequestEE request, HttpServletResponseEE response) throws ServletExceptionEE, IOExceptionSE
HttpRequestHandler
HttpRequestHandler
の handleRequest
request
- 現在の HTTP リクエスト response
- 現在の HTTP レスポンス ServletExceptionEE
- 一般的なエラーの場合 IOExceptionSE
- I/O エラーの場合