4.6. カスタムバルブの作成
バルブは、アプリケーションのサーブレットフィルターの前にアプリケーション用要求処理パイブラインに挿入される Java クラスです。これは、要求を変更または他の動作を実行するために使用できます。このタスクは、バルブを実装するのに必要な基本的な手順を示しています。
手順4.3 カスタムバルブの作成
バルブクラスの作成
org.apache.catalina.valves.ValveBase
のサブクラスを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 呼び出しメソッドの実装
invoke()
メソッドは、このバルブがパイプラインで実行されるときに呼び出されます。要求オブジェクトと応答オブジェクトはパラメーターとして渡されます。ここで、要求と応答の処理と変更を行います。public void invoke(Request request, Response response) { }
public void invoke(Request request, Response response) { }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のパイプラインステップの呼び出し
呼び出しメソッドが最後に実行する必要があることはパイプラインの次のステップを呼び出し、変更された要求オブジェクトと応答オブジェクトを渡すことです。これは、getNext().invoke()
メソッドを使用して行われます。getNext().invoke(request, response);
getNext().invoke(request, response);
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 任意の設定: パラメーターの指定
バルブを設定可能にする必要がある場合は、パラメーターを追加してこれを有効にします。これは、インスタンス変数と各パラメーターに対するセッターを追加して行います。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
例4.2 カスタムバルブの例