Questo contenuto non è disponibile nella lingua selezionata.
4.6. Create a Custom Valve
A Valve is a Java class that gets inserted into the request processing pipeline for an application before the application's servlet filters. This can be used to modify the request or perform any other behavior. This task demonstrates the basic steps required for implementing a valve.
Procedure 4.3. Create a Custom Valve
Create the Valve class
Create a subclass oforg.apache.catalina.valves.ValveBase
.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Implement the invoke method
Theinvoke()
method is called when this valve is executed in the pipeline. The request and response objects are passed as parameters. Perform any processing and modification of the request and response here.public void invoke(Request request, Response response) { }
public void invoke(Request request, Response response) { }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Invoke the next pipeline step
The last thing the invoke method must do is invoke the next step of the pipeline and pass the modified request and response objects along. This is done using thegetNext().invoke()
methodgetNext().invoke(request, response);
getNext().invoke(request, response);
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Optional: Specify parameters
If the valve must be configurable, enable this by adding a parameter. Do this by adding an instance variable and a setter method for each parameter.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Example 4.4. Sample Custom Valve