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/

Reply via email to