You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Christian Schneider (JIRA)" <ji...@apache.org> on 2014/01/15 09:46:19 UTC

[jira] [Updated] (HTTPASYNC-65) HttpAsyncClient does not work in OSGi

     [ https://issues.apache.org/jira/browse/HTTPASYNC-65?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christian Schneider updated HTTPASYNC-65:
-----------------------------------------

    Attachment: HTTPASYNC-65-1.patch

After this patch httpasyncclient works for me in CXF trunk. 

I did the following:
1. Switch back the http core and client versions to 4.3. This is just to make it work with the existing bundles.
2. Added the maven bundle plugin to the normal httpasync client module. I used defaults for almost all settings which seems to work fine for me. So the config is much simpler than before.
2. removed the complete osgi module as now the normal jar is already a bundle

I would be happy about feedback to my patch. I can also do the changes to the OSGi module if you prefer but I think just removing it should make more sense.

I can also provide pax exam tests in a separate issue if you are interested in better OSGi coverage at build time.

> HttpAsyncClient does not work in OSGi
> -------------------------------------
>
>                 Key: HTTPASYNC-65
>                 URL: https://issues.apache.org/jira/browse/HTTPASYNC-65
>             Project: HttpComponents HttpAsyncClient
>          Issue Type: Bug
>    Affects Versions: 4.0 Final
>            Reporter: Christian Schneider
>             Fix For: 4.0.1
>
>         Attachments: HTTPASYNC-65-1.patch
>
>
> We are using the http async client for CXF. In the current trunk we reference the 4.0 version. 
> Unfortunately the bundle does not work for us. I spotted two problems:
> 1. The Bundle-SymbolicName is the same as the one in httpclient
> In the pom there is:
> <Bundle-SymbolicName>${project.groupId}.httpclient</Bundle-SymbolicName>
> See http://search.maven.org/remotecontent?filepath=org/apache/httpcomponents/httpasyncclient-osgi/4.0/httpasyncclient-osgi-4.0.pom
> 2. The bundle refers to commons logging api 1.1.3 but pax logging only provides 1.0.4. I will also try to fix this for pax logging. 
> I think it should be possible to open up the import range for pax logging so you also accept the 1.0.x version.
> I checked out the current trunk and was able to make it work by doing some changes in the poms.
> I found that httpasyncclient has separate projects for the normal jar and the OSGi jar. Is this really necessary? I was able to switch the normal jar to packaging bundle and configure it there. This has the advantage that people only have to use one maven artifact for OSGi and non OSGi usage. This is espacially intersting for frameworks like cxf that live in both worlds.
> I will provide a patch with my changes. So you can review what I did.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org