Prev: Call for Papers Reminder (extended): International MultiConference of Engineers and Computer Scientists IMECS 2010
Next: Implementing a pricing function (Extracting Square Roots)
From: eunever32 on 11 Dec 2009 12:27 Hi I notice HttpServletResponse can set headers which I guess would be received by the browser at the end of the request. I tried setting HttpServletResponse.setHeader("Authorization", etc) but this wasn't picked up the the target webserver. Is it possible for a servlet (or filter) to insert such a header into the HttpServletREQUEST before the request gets for example proxied to another server? I have searched the web but can find no evidence of a HttpServletREQUEST.setHeader What I'm describing would be similar to a new URLConnection doing setRequestProperty Or apache commons HttpClient GetMethod.addRequestHeader ("Authorization", ..) Or XMLHttpRequest new ActiveXObject ('Microsoft.XMLHTTP').setRequestHeader In the same way if a servletfilter or servlet wanted to insert a header for the next tomcat shouldn't that be possible? Thanks
From: Arne Vajhøj on 11 Dec 2009 21:12
On 11-12-2009 12:27, eunever32(a)yahoo.co.uk wrote: > I notice HttpServletResponse can set headers which I guess would be > received by the browser at the end of the request. I tried setting > HttpServletResponse.setHeader("Authorization", etc) but this wasn't > picked up the the target webserver. No it is picked up by the browser receiving the response. > Is it possible for a servlet (or filter) to insert such a header into > the HttpServletREQUEST before the request gets for example proxied to > another server? Yes - a filter can set data in the request. > I have searched the web but can find no evidence of a > HttpServletREQUEST.setHeader No, but there is a setAttribute that can be used. > What I'm describing would be similar to a new URLConnection doing > setRequestProperty > Or apache commons HttpClient GetMethod.addRequestHeader > ("Authorization", ..) > > Or XMLHttpRequest new ActiveXObject > ('Microsoft.XMLHTTP').setRequestHeader > > In the same way if a servletfilter or servlet wanted to insert a > header for the next tomcat shouldn't that be possible? Request setAttribute is only passed on to the processing JSP page or servlet - it is nor forwarded to another site. In fact nothing is so automatically. You can iterate over request headers (and request attributes if necesarry) and call setRequestProperty on your HttpURLConnection to pass on everything. Arne |