2010-12-08 49 views
0

Il s'agit du filtre mod_perl2.le filtre ne fonctionne pas comme prévu

Idéalement, un travail de filtre consiste à faire quelque chose avec les données d'entrée & transmettre les données au prochain filtre ou à la ressource demandée réelle.

Dans mon cas, j'ai un PerlInputFilterHandler défini pour un modèle d'URL. Voir ci-dessous balise de localisation:

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

Ce filtre (test10) est censé modifier les données de demande & passe sur le contrôle de AServlet (un servlet déployé sur WebLogic Server).

Toutefois, ce filtre est appelé, mais il ne transmet pas de contrôle à AServlet - peu importe ce que j'écris dans le filtre. Pourquoi ça?

Merci.

+0

La réponse peut dépendre du contenu de votre PerlInputFilterHandler, notamment en ce qui concerne le passage du contrôle au gestionnaire suivant. S'il vous plaît poster ici un petit exemple autonome qui montre le comportement que vous éprouvez. – mfontani

+0

Le code est dans http://stackoverflow.com/questions/4367000/error-in-generating-response-from-perlinputfilterhandler – daxim

Répondre

0

Essayez de supprimer la ligne SetHandler. Il indique à Apache que la phase de contenu de la requête doit être gérée par mod_perl, mais il semble que vous souhaitiez que la phase de contenu soit gérée ailleurs. La directive PerlInputFilterHandler doit toujours prendre effet même si le gestionnaire de contenu principal n'est pas modperl. Si le gestionnaire de contenu est en cours de mod_perl, vous devez également définir un

+0

Cela a fonctionné. Merci! –