looks like it...this is not a good fix, but just add your com.peopledoc.jura.dmintegration.spi.impl.AXISTransportClientProperties to axis jar itself to see if it works and then tackle the classloader issue.
-- dims On Tue, 25 Jan 2005 15:32:23 +0000, Stuart Barlow <[EMAIL PROTECTED]> wrote: > I have set... > System.setProperty("org.apache.axis.components.net.TransportClientProperties", > > "com.peopledoc.jura.dmintegration.spi.impl.AXISTransportClientProperties"); > > Unfortunatly I am now getting... > > 2005-01-25 15:20:57,187 ERROR axis.AxisProperties [Jura Thread #12] Exception: > org.apache.commons.discovery.DiscoveryException: No implementation defined for > org.apache.axis.components.net.TransportClientProperties > at > org.apache.commons.discovery.tools.DiscoverClass.find(DiscoverClass.java:404) > at > org.apache.commons.discovery.tools.DiscoverClass.newInstance(DiscoverClass.java:579) > at org.apache.axis.AxisProperties$2.run(AxisProperties.java:351) > at java.security.AccessController.doPrivileged(Native Method) > at org.apache.axis.AxisProperties.newInstance(AxisProperties.java:347) > at org.apache.axis.AxisProperties.newInstance(AxisProperties.java:327) > at > org.apache.axis.components.net.TransportClientPropertiesFactory.create(TransportClientPropertiesFactory.java:85) > at > org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSocketFactory.java:106) > at > org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:157) > at > org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:114) > at > org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71) > at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150) > at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120) > at org.apache.axis.client.AxisClient.invoke(AxisClient.java:180) > at org.apache.axis.client.Call.invokeEngine(Call.java:2564) > at org.apache.axis.client.Call.invoke(Call.java:2553) > at org.apache.axis.client.Call.invoke(Call.java:2248) > at org.apache.axis.client.Call.invoke(Call.java:2171) > at org.apache.axis.client.Call.invoke(Call.java:1691) > at > com.hummingbird.hc.dm.api.DmintsoapSoapBindingStub.bootstrap(DmintsoapSoapBindingStub.java:846) > > Are the apache.commons.discovery classes failing to find my > implementation class? > > I am running in an AppServer and classloaders can get tricky. > ta, > Stuart. > > Davanum Srinivas wrote: > > yep. i think so. > > > > -- dim > > > > > > On Tue, 25 Jan 2005 13:29:01 +0000, Stuart Barlow <[EMAIL PROTECTED]> wrote: > > > >>Thanks for the details Davanum. My theaimsgroup search did not > >>hit this stuff so much appreciated. > >> > >>Taking a look inside the DefaultHTTPTransportClientProperties class > >>I can see that it gets all its info from the AxisProperties class. > >> > >>So can I just call AxisProperties.setProperties ? > >> > >>ta, > >>Stuart. > >> > >>Davanum Srinivas wrote: > >> > >>>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 > >>>> > >>>> > >>> > >>> > >>> > >>-- > >>Stuart > >> > >> > > > > > > > > -- > Stuart > > -- Davanum Srinivas - http://webservices.apache.org/~dims/