Hi Sergey,

today I read your mails again with a fresh mind, trying to make it work ;-) 
First, regarding the mail below, I saw that according to [1] the property 
"org.apache.cxf.rs.provider" is of Boolean type while you suggest to use it as 
a list of classnames. If I use it as a list of classnames whatsoever I get a 
java.lang.ClassNotFoundException: org.apache.cxf.jaxrs.provider.JSONProvider, 
the same for org.apache.cxf.rs.JAXBElementProvider. The same happens when I try 
to instantiate JSONProvider and register it as a service with the OSGI service 
registry via a DS Component with the following XML:

<scr:component enabled="true" immediate="true" 
name="VzServiceRestJSONProviderComponent"
               xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0";>
    <implementation class="org.apache.cxf.jaxrs.provider.JSONProvider"/>
    <property name="service.pid" value="VzServiceRestJSONProvider"/>
    <service servicefactory="false">
        <provide interface="javax.ws.rs.ext.MessageBodyReader"/>
        <provide interface="javax.ws.rs.ext.MessageBodyWriter"/>
    </service>
</scr:component>

These are the bundles I installed (Pax Runner start script):

#!/bin/bash
pax-runner-1.4.0/bin/pax-run.sh\
 --bootDelegation=sun.*,com.sun.*,javax.xml.bind,javax.xml.bind.*\
 mvn:org.osgi/org.osgi.core/4....@1@nostart\
 mvn:org.osgi/org.osgi.compendium/4....@1@nostart\
 mvn:org.ops4j.pax.logging/pax-logging-...@2@nostart\
 mvn:org.apache.cxf.dosgi/cxf-dosgi-ri-singlebundle-distribution/1...@2\
 mvn:org.apache.felix/org.apache.felix.scr/1....@2\
 mvn:org.codehaus.jettison/jettison/1...@2\
 ... (some more bundles of my app)

Inspecting the cxf-dosgi-ri-singlebundle-distribution bundle and browsing the 
jar I can see that the class is included and the package is exported, therefore 
I can't explain to myself why this doesn't work :-(

Do you have any clue why the Providers can't be found?

Regards,
Daniel

[1] 
http://cxf.apache.org/distributed-osgi-reference.html#DistributedOSGiReference-ServiceProviderpropertiesForConfiguringRESTfulJAXRSbasedendpointsandconsumers

Am 27.01.2010 um 10:47 schrieb Sergey Beryozkin:

> Hi Daniel
> 
> Please see "Registering custom JAXRS providers" in [1].
> There's a couple of options. One is to to use an "org.apache.cxf.rs.provider" 
> property which accepts a list of class names, so you can list the provider 
> you need, ex, "org.apache.cxf.jaxrs.provider.JSONProvider", etc. The other 
> option is to register an instance of say JSONProvider as an OSGI service, 
> this option is the only way at the moment to have a provider instance 
> configured with some custom properties...
> 
> To simplify things a bit, I'll probably need to intoduce "json", "atom", 
> "xbeans", etc for org.apache.cxf.rs.databinding so that users can avoid 
> having to specify classnames like 
> "org.apache.cxf.jaxrs.provider.JSONProvider" directly...For more advanced 
> cases we will need to recognize providers configured in Spring (as an 
> alternative to registering them as OSGI services)...
> 
> cheers, Sergey
> 
> 
> 
> [1] 
> http://cxf.apache.org/distributed-osgi-reference.html#DistributedOSGiReference-ServiceProviderpropertiesForConfiguringRESTfulJAXRSbasedendpointsandconsumers
> 
> ----- Original Message ----- From: "Daniel Bimschas" 
> <[email protected]>
> To: <[email protected]>
> Sent: Tuesday, January 26, 2010 9:59 PM
> Subject: DOSGi and JSON responses
> 
> 
> Hi List!
> 
> I've now successfully developed a project that additionally exposes its 
> interfaces over the DOSGi based JAX-RS implementation as RESTful service. 
> Therefore I've used the JAXB-Binding which worked fine. However, I couldn't 
> find any information about how to get the JSON responses working (they are 
> always empty, i.e. 0 bytes of payload). Can somebody help me here and point 
> me to the right documentation?
> 
> Kind regards,
> Daniel= 

-- 
M.Sc. Daniel Bimschas
Institute of Telematics, University of Lübeck
http://www.itm.uni-luebeck.de/users/bimschas
Ratzeburger Allee 160, 23538 Lübeck, Germany
Phone: +49 451 500 5389

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to