http://marc.theaimsgroup.com/?l=axis-dev&m=105787295106872&w=2
On Tue, 25 Jan 2005 11:53:51 +0000, Stuart Barlow <[EMAIL PROTECTED]> wrote: > Did you get an answer to this problem? > > I have a similar problem running in an AppServer. I want to set http.proxyHost > but not at the System level. I am using WSDL2Java so I cannot get to the call > object to set the properties on the Call. > > Graeme Riddell wrote: > > > > I have a multithreaded app that is issuing SOAP requests via AXIS. It seems > > that if thread 1 sets a http.proxyHost AxisProperty then it's visible to > > thread 2 when he calls AxisProperties.getProperty(). (Because > > AxisProperties is tied to the current ClassLoader?). > > > > The problem I have is that I would like to have these multiple http > > requests on different threads potentially target different (or no) proxy > > hosts, ie, each thread gets its own AxisProperties. > > > > To complicate things there seems to be an additional layer involved which > > is that down in the DefaultSocketFactory.create() logic during the > > "writeToSocket" there is a call to > > TransportClientPropertiesFactory.create("http") which returns a cached > > properties object, but I *think* all that he is doing is making calls to > > AxisProperties.getProperty(). > > > > Anyone have a recommendation for how to go about this? Thoughts occurring > > to me are to replace the socket factory class with my own (with > > AxisProperties.setProperty("axis.socketFactory",.. )?) and use ThreadLocal > > to get the proxy values down to that level from my app code, and avoid the > > TransportClientProperties cached object. But that seems a little inelegant. > > Anyone any ideas? > > > > -gr > > > > -- > Stuart > > -- Davanum Srinivas - http://webservices.apache.org/~dims/