You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Andriy Redko (JIRA)" <ji...@apache.org> on 2016/08/22 12:25:20 UTC

[jira] [Resolved] (CXF-6740) Collision by Swagger2Feature in two OSGI bundles

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

Andriy Redko resolved CXF-6740.
-------------------------------
    Resolution: Fixed

> Collision by Swagger2Feature in two OSGI bundles 
> -------------------------------------------------
>
>                 Key: CXF-6740
>                 URL: https://issues.apache.org/jira/browse/CXF-6740
>             Project: CXF
>          Issue Type: Bug
>          Components: OSGi
>    Affects Versions: 3.1.4
>         Environment: Apache Karaf 4.0.2
>            Reporter: Andre Schlegel
>            Assignee: Andriy Redko
>             Fix For: 3.2.0, 3.1.8
>
>         Attachments: 0001-temporary-work-for-cxf-6740-take-2.patch, 0001-temporary-work-for-cxf-6740.patch, CXF-6740-Collision-by-Swagger.patch
>
>
> I have two separate bundles in my karaf, which are using cxf with the swagger2feature. The endpoints (/cxf/bpc-core and /cxf/bpc-monitor/ ) in both bundles working fine. But I got on both swagger-URL the same swagger-File (both for the monitor endpoints).
> I'm using the blueprint for swagger2feature configuration and annotation for the endpoints.
> core bundle
> {code}
> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>        xmlns:cxf="http://cxf.apache.org/blueprint/core"
>        xmlns:jaxrs="http://cxf.apache.org/blueprint/jaxrs"
>        xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
>                            http://cxf.apache.org/blueprint/core http://cxf.apache.org/schemas/blueprint/core.xsd
>                            http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/blueprint/jaxrs.xsd">
>     <!-- JAXRS providers -->
>     <bean id="jsonProvider" class="com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider" />
>     <!-- Application resources -->
>     <bean id="authenticationResource" class="de.virtimo.bpc.core.resource.AuthenticationResource" />
>     <bean id="configurationResource" class="de.virtimo.bpc.core.resource.Configuration" />
>     <bean id="statusResource" class="de.virtimo.bpc.core.resource.Status" />
>     <!-- CXF Swagger2Feature -->  
>     <bean id="swagger2Feature_core" class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">
>         <property name="basePath" value="/bpc-core"/>
>         <property name="title" value="BPC Core"/>
>     </bean>
>     <cxf:bus>
>         <cxf:features>
>             <cxf:logging />
>         </cxf:features>
>     </cxf:bus>
>     <jaxrs:server id="bpcServer" address="/bpc-core">
>         <jaxrs:serviceBeans>
>             <ref component-id="authenticationResource" />
>             <ref component-id="configurationResource" />
>             <ref component-id="statusResource" />
>         </jaxrs:serviceBeans>
>         <jaxrs:providers>
>             <ref component-id="jsonProvider" />
>         </jaxrs:providers>
>         <jaxrs:features>
>             <ref component-id="swagger2Feature_core" />
>         </jaxrs:features>
>     </jaxrs:server>
> </blueprint>
> {code}
> Monitor Bundle
> {code}
> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>        xmlns:cxf="http://cxf.apache.org/blueprint/core"
>        xmlns:jaxrs="http://cxf.apache.org/blueprint/jaxrs"
>        xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
>                            http://cxf.apache.org/blueprint/core http://cxf.apache.org/schemas/blueprint/core.xsd
>                            http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/blueprint/jaxrs.xsd">
>     <!-- JAXRS providers -->
>     <bean id="jsonProvider" class="com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider" />
>     <!-- Application resources -->
>     <bean id="monitorResource" class="de.virtimo.bpc.module.monitor.resource.Monitor" />
>     <!-- CXF Swagger2Feature -->  
>     <bean id="swagger2Feature_monitor" class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">
>         <property name="basePath" value="/bpc-monitor"/>Center"/>
>         <property name="title" value="BPC Monitor"/>
>     </bean>
>     <cxf:bus>
>         <cxf:features>
>             <cxf:logging />
>         </cxf:features>
>     </cxf:bus>
>     <jaxrs:server id="bpcMonitor" address="/bpc-monitor">
>         <jaxrs:serviceBeans>
>             <ref component-id="monitorResource" />
>         </jaxrs:serviceBeans>
>         <jaxrs:providers>
>             <ref component-id="jsonProvider" />
>         </jaxrs:providers>
>         <jaxrs:features>
>             <ref component-id="swagger2Feature_monitor" />
>         </jaxrs:features>
>     </jaxrs:server>
> </blueprint>
> {code}
> I got the swagger-file for the monitor bundle on /cxf/bpc-core/swagger.json and /cxf/bpc-monitor/swagger.json
> Anyone suggestion how to handle this scenario?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)