Deploying REST service on CXF Transport for OSGi
------------------------------------------------

                 Key: CXF-2202
                 URL: https://issues.apache.org/jira/browse/CXF-2202
             Project: CXF
          Issue Type: Bug
          Components: OSGi
    Affects Versions: 2.2
         Environment: ServiceMix
  ServiceMix home             /opt/servers/fuse-esb/fuse-esb-4.1.0.0
  ServiceMix base             /opt/servers/fuse-esb/fuse-esb-4.1.0.0
  ServiceMix Kernel version   1.1.0.0-fuse
  ServiceMix version          4.1.0.0-fuse

JVM
  Java Virtual Machine        Java HotSpot(TM) 64-Bit Server VM version 
1.6.0_07-b06-57
  Vendor                      Apple Inc.
  Uptime                      4 days 45 hours
  Total compile time          22.997 seconds
Threads
  Live threads                79
  Daemon threads              37
  Peak                        223
  Total started               14328
Memory
  Current heap size           54,440 kbytes
  Maximum heap size           502,464 kbytes
  Committed heap size         125,952 kbytes
  Pending objects             0
  Garbage collector           Name = 'Copy', Collections = 475, Time = 1.654 
seconds
  Garbage collector           Name = 'MarkSweepCompact', Collections = 34, Time 
= 51.343 seconds
Classes
  Current classes loaded      7,442
  Total classes loaded        7,598
  Total classes unloaded      156
Operating system
  Name                        Mac OS X version 10.5.6
  Architecture                x86_64
  Processors                  2

            Reporter: JS Bournival


 have a serious issue that I want to discuss.   

I am developing rest services osgi bundles on fuse4/smx4 using the cxf-osgi 
transport.  JAX-RS impl is obviously CXF, which is fine.  But as I learned 
recently, I have to specify "/cxf" as part of my implementation @Path 
annotation, like this: 

<code> 
@Path("/cxf/top10") 
public class TopTenRestService { 
  // methods 
} 
</code> 

I find this somewhat strange because it exposes (shall I say binds) the 
underlying JAX-RS implementation to my service class, which is the complete 
opposite of what the JAX-RS spec should provide. 

Again, maybe I just don't get it.  Using it this way actually works, but 
there's something not right about how to specifiy the @Path. 

As a complement, here is my service configuration in my bundle' spring bean 
file:

<code> 
<import resource="classpath:META-INF/cxf/cxf.xml" /> 
<import resource="classpath:META-INF/cxf/cxf-extension-http.xml" /> 
<import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml"/> 
<import resource="classpath:META-INF/cxf/osgi/cxf-extension-osgi.xml" /> 

<jaxrs:server address="/top10"> 
        <jaxrs:serviceBeans> 
                <ref bean="topTenRestService" /> 
        </jaxrs:serviceBeans> 
</jaxrs:server> 

<bean id="topTenRestService" 
class="com.company.project.topten.TopTenRestService"></bean> 
</code> 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to