I tried both the ServiceMix bundle and the Jettison 1.2 bundle but both still deliver empty output. Debug output looks fine as far as I can see (it selects org.apache.cxf.jaxrs.provider.JSONProvider for output):
... [btpool3-0] DEBUG org.apache.cxf.phase.PhaseInterceptorChain - Invoking handleMessage on interceptor org.apache.cxf.jaxrs.interceptor.jaxrsoutintercep...@46cfd5ee [btpool3-0] DEBUG org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor - Response content type is: application/json [btpool3-0] DEBUG org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor - Response EntityProvider is: org.apache.cxf.jaxrs.provider.JSONProvider [btpool3-0] DEBUG org.apache.cxf.phase.PhaseInterceptorChain - Invoking handleMessage on interceptor org.apache.cxf.interceptor.messagesenderinterceptor$messagesenderendingintercep...@4d0155fb [btpool3-0] DEBUG org.apache.cxf.transport.http_jetty.JettyHTTPDestination - Finished servicing http request on thread: Thread[btpool3-0,5,main] ... Any idea? Just to be sure my configuration is correct, here's my serviceComponents.xml: <?xml version="1.0" encoding="UTF-8"?> <components xmlns:scr="http://www.osgi.org/xmlns/scr/v1.0.0"> <scr:component enabled="true" immediate="true" name="VzServiceRestComponent"> <implementation class="de.uniluebeck.itm.soapraktikum.ws0910.persons.vz.impl.PersonResource"/> <service servicefactory="false"> <provide interface="de.uniluebeck.itm.soapraktikum.ws0910.persons.vz.impl.PersonResource"/> </service> <property name="service.exported.interfaces" type="String" value="*"/> <property name="service.exported.configs" type="String" value="org.apache.cxf.rs"/> <property name="service.exported.intents" type="String" value="HTTP"/> <property name="org.apache.cxf.rs.address" type="String" value="http://localhost:9090/persons/"/> <property name="org.apache.cxf.rs.databinding" type="String"> org.apache.cxf.jaxrs.provider.JAXBProvider org.apache.cxf.jaxrs.provider.JSONProvider </property> <property name="service.pid" value="VzServiceRestComponent"/> <reference name="vzService" interface="de.uniluebeck.itm.soapraktikum.ws0910.persons.vz.VzService" cardinality="1..1" policy="static" bind="bindVzService" unbind="unbindVzService"/> </scr:component> </components> Am 27.01.2010 um 16:03 schrieb Daniel Bimschas: > Would DOSGi RI 1.1 work with > http://repo1.maven.org/maven2/org/codehaus/jettison/jettison/1.2/jettison-1.2.jar > or is there any reason it would not? > > Am 27.01.2010 um 15:49 schrieb Sergey Beryozkin: > >> Hi >> >> if you use "org.apache.cxf.rs.provider" string property then it's a >> comma-separated list of class names, if using declarative services then you >> need to have a space separated list of class names listed on separate lines, >> as shown in the section I linked to. >> As we discussed eralier on, there's also an "org.apache.cxf.rs.databinding" >> property which is of limited value to JAXRS services at the moment (can have >> "aegis" or "jaxb" values). I'm thinking of adding more supported values to >> it so that one can say : "org.apache.cxf.rs.databinding"="jaxb,json" instead >> of typing class names when setting a "org.apache.cxf.rs.provider". >> >> Oh, I forgot...DOSGI RI does not ship Jettison (ServiceMix would install it >> as part of cxf jaxrs feature), perhaps it should. So if you'd like to use a >> default CXF JSON provider (which is Jettison-based) then install either >> Jettison 1.1 bundle [1] or Jettison 1.2, CXF 2.2.4 (which depends on >> Jettison 1.1) should accept it too, there's no version range in the CXF >> Import-Package for jettison packages >> >> Sergey >> >> [1] >> http://repo1.maven.org/maven2/org/apache/servicemix/bundles/org.apache.servicemix.bundles.jettison/1.0.1_2/ >> [2] >> http://docs.codehaus.org/display/JETTISON/2010/01/18/Jettison+1.2+released >> >> ----- Original Message ----- From: "Daniel Bimschas" >> <[email protected]> >> To: <[email protected]> >> Sent: Wednesday, January 27, 2010 2:11 PM >> Subject: Re: DOSGi and JSON responses >> >> >> Sorry, accidentally sent the last before I finished writing it :) >> >> I used maven-scr-plugin to generate the properties of the registered >> service, therefore the syntax should be ok now. However, it doesn't seem to >> work. I keep getting empty JSON files :( I'll now check out to do it on the >> greeter_rest sample, see if it works there! >> >> 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 >> >> > > -- > 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 > -- 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
smime.p7s
Description: S/MIME cryptographic signature
