You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "JS Bournival (JIRA)" <ji...@apache.org> on 2009/05/05 15:18:30 UTC
[jira] Created: (CXF-2202) Deploying REST service on CXF Transport
for OSGi
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.
[jira] Resolved: (CXF-2202) Deploying REST service on CXF Transport
for OSGi
Posted by "Sergey Beryozkin (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-2202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sergey Beryozkin resolved CXF-2202.
-----------------------------------
Resolution: Fixed
Fix Version/s: 2.3
2.2.4
Assignee: Sergey Beryozkin
'/cxf' is still a default alias but can be overridden by adding
org.apache.cxf.osgi.cfg properties into /etc directory
and setting
org.apache.cxf.servlet.context property to some custom value:
org.apache.cxf.servlet.context=/bar
If this org.apache.cxf.osgi.cfg is not available then ConfigAdmin service can be used to configure 'cxfOsgiProps'
> 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
> Assignee: Sergey Beryozkin
> Fix For: 2.2.4, 2.3
>
>
> 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.