Community
Participate
Working Groups
There seem to be 2 things that need to be added to the manifests so that clients can use the new httpclient 4.1 bundle. First, a dependency is needed on org.apach.commons.codec so that the Base64 class can be used. Next, a buddy policy is required so that clients of this bundle can provide custom implementations of some classes for customization of the behavior. With httpclient, these customizations are registered as class name strings from the client bundle which are then instantiated when needed by the httpclient bundle, so the buddy policy needs to be used to ensure that it can load classes from the client bundle.
Created attachment 192114 [details] patch Here is a simple patch.
I'll look at this tonight.
We will be updating to 4.1.1 very soon, see bug 341311. I'll make this fix then. Is that OK?
What is the timeframe for this update (having it in cvs and having a build of it)?
can we get the codec addition so that we can move forward with some work on this front? we will investigate if the buddy policy is actually needed to make this work.
Chris, can we make the trivial change to add the missing dependency now since that blocks using the library (we can work around the buddy policy)?
I updated it to use an Import-Package to get the Base64 class... but man... that's crazy since they used BND to generate the MANIFEST.MF and generated a faulty one... let me know if that works now. I'm suspicious of the need for a Buddy Policy though...
Thanks Chris! Will let you know about the buddy-policy and if this package import works.
It turns out that overriding AbstractHttpClient.createClientConnectionManager() makes a buddy-policy unnecessary. Given the potential headaches that buddy-policies tend to cause I believe we are better off leaving it out. I have updated the summary accordingly and will mark this as resolved since the missing package import has been added.