2011-03-30 3 views
0

obtenu deux applications en cours d'exécution sur tomcat:Comment intercepter une requête sortante sur Tomcat?

  • Application1 (JSP)
  • Application2 (Webservices)

Je veux régler le paramètre de requête (objet utilisateur, avec des informations sur l'utilisateur actuel) qui est en sortant de l'Application1 et lorsque cette requête arrive à Application2, je veux récupérer le paramètre et modifier certaines configurations locales dans Application2.

Je sais que je peux filtrer la requête entrante dans Application2 en utilisant Filter, mais comment puis-je filtrer la requête sortante dans Application1?

+0

J'ai essayé d'utiliser la soupape personnalisée Tomcat, mais je dois mettre ma classe .class au-dessus des autres classes dont j'ai besoin dans l'arborescence du classloader. Donc, quand ma valve s'exécute, j'obtiens ClassNotFoundException pour ma classe User. –

Répondre

0

J'ai été capable d'atteindre mon objectif en implémentant une classe SOAPHandler. J'ai été capable d'intercepter le message SOAP, d'ajouter des paramètres d'en-têtes et lorsque ce message SOAP est arrivé à Application2, j'ai extrait ces informations d'en-têtes et implémenter le même SOAPHandler.

0

Lorsque vous dites "demande sortante", je comprends qu'il s'agit de la "réponse". Je vous suggère également d'utiliser un filtre de servlet pour effectuer votre modification dans Application1 après avoir passé par la chaîne de filtrage/traitement normale.

i.e. .:

filterchain.doFilter(request, response); 
//code here... 

Je ne vois pas comment vous pouvez modifier les paramètres de requête/réponse avec Apache Valve.

+0

Les filtres interceptent uniquement la requête entrante et la réponse sortante. Je souhaitais intercepter une requête adressée à un service Web JAXWS. Comme intercepter la demande qui sort de l'Application1 avant qu'il ne devienne une demande entrante dans l'Application2. J'ai été capable d'accomplir mon objectif en implémentant un SOAPHandler, de cette manière j'ai été capable d'intercepter le message SOAP, d'ajouter des paramètres d'en-tête et quand ce message SOAP est arrivé sur mon Application2, j'ai extrait ces en-têtes. –

Questions connexes