Question

It's about mod_perl2 filter.

Ideally a job of filter is to do something with input data & pass on the data to next filter or actual requested resource.

In my case, I've a PerlInputFilterHandler defined for a URL pattern. See below location tag:

<Location /testproj/AServlet>
SetHandler modperl
PerlInputFilterHandler MyApache2::Test10
</Location>

This filter (Test10) is supposed to change request data & pass on control to AServlet (a servlet deployed on WebLogic Server).

However, this filter is getting invoked but it's not passing control to AServlet - no matter what I write in filter. Why so?

Thanks.

Was it helpful?

Solution

Try removing the SetHandler line. It tells Apache that the content phase of the request should be handled by mod_perl, but it sounds like you want the content phase handled elsewhere. The PerlInputFilterHandler directive should still take effect even if the main content handler is not modperl. If the content handler is being done by mod_perl you should also set a PerlResponseHandler

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top