Uploaded image for project: 'Aries'
  1. Aries
  2. ARIES-1975

JAX-RS impl in Adobe Experience Manager

    XMLWordPrintableJSON

Details

    • Question
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • jax-rs-whiteboard-1.0.7
    • None
    • jax-rs-whiteboard
    • None

    Description

       

      
      

      I'm trying to use JAX-RS in AEM (OSGi), but my bundle is not active because of missing requirements.

      Can you try to tell me what I'm missing? Should I use org.apache.aries.jax.rs.whiteboard or both, something else?

       

      org.apache.aries.javax.jax.rs-api is installed as a separate bundle and it's active

      // org.osgi.framework.BundleException: Unable to resolve com.aem.demo.core [603](R 603.11): missing requirement [com.aem.demo.core [603](R 603.11)] osgi.implementation; (&(osgi.implementation=osgi.jaxrs)(version>=1.0.0)(!(version>=2.0.0))) Unresolved requirements: [[com.aem.demo.core [603](R 603.11)] osgi.implementation; (&(osgi.implementation=osgi.jaxrs)(version>=1.0.0)(!(version>=2.0.0)))]
      
      
              <dependency>
                  <groupId>org.osgi</groupId>
                  <artifactId>osgi.core</artifactId>
                  <version>7.0.0</version>
                  <scope>provided</scope>
              </dependency>
              <dependency>
                  <groupId>org.osgi</groupId>
                  <artifactId>osgi.cmpn</artifactId>
                  <version>7.0.0</version>
                  <scope>provided</scope>
              </dependency>
              <dependency>
                  <groupId>org.osgi</groupId>
                  <artifactId>osgi.annotation</artifactId>
                  <version>7.0.0</version>
                  <scope>provided</scope>
              </dependency>
              <dependency>
                  <groupId>org.osgi</groupId>
                  <artifactId>org.osgi.service.component.annotations</artifactId>
                  <version>1.4.0</version>
                  <scope>provided</scope>
              </dependency>
              <dependency>
                  <groupId>org.osgi</groupId>
                  <artifactId>org.osgi.service.metatype.annotations</artifactId>
                  <version>1.4.0</version>
                  <scope>provided</scope>
              </dependency>
              <dependency>
                  <groupId>org.osgi</groupId>
                  <artifactId>org.osgi.service.component</artifactId>
                  <version>1.4.0</version>
                  <scope>provided</scope>
              </dependency>
              <dependency>
                  <groupId>biz.aQute.bnd</groupId>
                  <artifactId>biz.aQute.bndlib</artifactId>
                  <version>5.0.0</version>
                  <scope>provided</scope>
              </dependency>
              <dependency>
                  <groupId>org.apache.aries.spec</groupId>
                  <artifactId>org.apache.aries.javax.jax.rs-api</artifactId>
                  <version>1.0.4</version>
                  <scope>provided</scope>
              </dependency>
      

      Manifest of my bundle

       

      // Symbolic Name   com.aem.demo.core
      Version 1.0.0.20200225143408035
      Bundle Location jcrinstall:/apps/my-aem-project/install/com.aem.demo.core-1.0.0-SNAPSHOT.jar
      Last Modification   Tue Feb 25 15:34:51 CET 2020
      Description "Core bundle for My AEM Project"
      Start Level 20
      Exported Packages   com.aem.demo.core.controllers,version=1.0
      com.aem.demo.core.dto,version=1.0
      com.aem.demo.core.filters,version=1.0
      com.aem.demo.core.listeners,version=1.0
      com.aem.demo.core.models,version=1.0
      com.aem.demo.core.schedulers,version=1.0
      com.aem.demo.core.services,version=1.0
      com.aem.demo.core.servlets,version=1.0
      Imported Packages   com.day.cq.wcm.api,version=[1.27,2) from com.day.cq.wcm.cq-wcm-api (461)
      com.aem.demo.core.controllers,version=[1.0,2) from com.aem.demo.core (603)
      com.aem.demo.core.dto,version=[1.0,2) from com.aem.demo.core (603)
      com.aem.demo.core.filters,version=[1.0,2) from com.aem.demo.core (603)
      com.aem.demo.core.listeners,version=[1.0,2) from com.aem.demo.core (603)
      com.aem.demo.core.servlets,version=[1.0,2) from com.aem.demo.core (603)
      javax.annotation,version=0.0.0 from org.apache.geronimo.specs.geronimo-annotation_1.3_spec (2)
      javax.servlet,version=[2.6,3) from org.apache.felix.http.servlet-api (52)
      javax.ws.rs from org.apache.aries.javax.jax.rs-api (598)
      org.apache.sling.api,version=[2.3,3) from org.apache.sling.api (77)
      org.apache.sling.api.request,version=[2.4,3) from org.apache.sling.api (77)
      org.apache.sling.api.resource,version=[2.11,3) from org.apache.sling.api (77)
      org.apache.sling.api.servlets,version=[2.2,3) from org.apache.sling.api (77)
      org.apache.sling.models.annotations,version=[1.5,2) from org.apache.sling.models.api (543)
      org.apache.sling.models.annotations.injectorspecific,version=[1.1,2) from org.apache.sling.models.api (543)
      org.apache.sling.settings,version=[1.3,2) from org.apache.sling.settings (4)
      org.osgi.service.event,version=[1.4,2) from org.apache.felix.eventadmin (40)
      org.slf4j,version=[1.7,2) from slf4j.api (7)
      Manifest Headers    Bnd-LastModified: 1582641248035
      Build-Jdk-Spec: 1.8
      Bundle-Category: demo
      Bundle-Description: "Core bundle for My AEM Project"
      Bundle-ManifestVersion: 2
      Bundle-Name: My AEM Project - Core
      Bundle-SymbolicName: com.aem.demo.core
      Bundle-Version: 1.0.0.20200225143408035
      Created-By: 1.8.0_162 (Oracle Corporation)
      Export-Package: com.aem.demo.core.controllers; version="1.0"; uses:="com.aem.demo.core.dto, javax.ws.rs", com.aem.demo.core.dto; version="1.0", com.aem.demo.core.filters; version="1.0"; uses:="javax.servlet", com.aem.demo.core.listeners; version="1.0"; uses:="org.osgi.service.event", com.aem.demo.core.models; version="1.0"; uses:="javax.annotation, org.apache.sling.api.resource, org.apache.sling.models.annotations", com.aem.demo.core.schedulers; version="1.0", com.aem.demo.core.services; version="1.0", com.aem.demo.core.servlets; version="1.0"; uses:="javax.servlet, org.apache.sling.api, org.apache.sling.api.servlets"
      Import-Package: javax.annotation; version="0.0.0", com.day.cq.wcm.api; version="[1.27, 2)", com.aem.demo.core.controllers; version="[1.0, 2)", com.aem.demo.core.dto; version="[1.0, 2)", com.aem.demo.core.filters; version="[1.0, 2)", com.aem.demo.core.listeners; version="[1.0, 2)", com.aem.demo.core.servlets; version="[1.0, 2)", javax.servlet; version="[2.6, 3)", javax.ws.rs, org.apache.sling.api; version="[2.3, 3)", org.apache.sling.api.request; version="[2.4, 3)", org.apache.sling.api.resource; version="[2.11, 3)", org.apache.sling.api.servlets; version="[2.2, 3)", org.apache.sling.models.annotations; version="[1.5, 2)", org.apache.sling.models.annotations.injectorspecific; version="[1.1, 2)", org.apache.sling.settings; version="[1.3, 2)", org.osgi.service.event; version="[1.4, 2)", org.slf4j; version="[1.7, 2)"
      Manifest-Version: 1.0
      Private-Package: com.aem.demo.core.dao, com.aem.demo.core.schedulers.config
      Provide-Capability: osgi.service; objectClass:List="com.aem.demo.core.controllers.PersonController", osgi.service; objectClass:List="com.aem.demo.core.schedulers.SimpleScheduledTask, java.lang.Runnable", osgi.service; objectClass:List="javax.servlet.Filter", osgi.service; objectClass:List="javax.servlet.Servlet", osgi.service; objectClass:List="org.osgi.service.event.EventHandler"
      Require-Capability: osgi.extender; filter:="(&(osgi.extender=osgi.component)(version>=1.4.0)(!(version>=2.0.0)))", osgi.implementation; filter:="(&(osgi.implementation=osgi.http)(version>=1.1.0)(!(version>=2.0.0)))", osgi.implementation; filter:="(&(osgi.implementation=osgi.jaxrs)(version>=1.0.0)(!(version>=2.0.0)))", osgi.service; filter:="(osgi.jaxrs.media.type=application/json)"; resolution:=optional; effective:=active, osgi.contract; osgi.contract=JavaJAXRS; filter:="(&(osgi.contract=JavaJAXRS)(version=2.1.0))", osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=1.8))"
      Service-Component: OSGI-INF/com.aem.demo.core.controllers.PersonController.xml, OSGI-INF/com.aem.demo.core.filters.LoggingFilter.xml, OSGI-INF/com.aem.demo.core.listeners.SimpleResourceListener.xml, OSGI-INF/com.aem.demo.core.schedulers.SimpleScheduledTask.xml, OSGI-INF/com.aem.demo.core.servlets.SimpleServlet.xml
      Sling-Model-Packages: com.aem.core.models
      Tool: Bnd-4.2.0.201903051501
      

      Manifest of org.apache.aries.javax.jax.rs-api

       

      // Symbolic Name   org.apache.aries.javax.jax.rs-api
      Version 1.0.4
      Bundle Location jcrinstall:/apps/my-aem-project-vendor-packages/application/install/org.apache.aries.javax.jax.rs-api-1.0.4.jar
      Last Modification   Mon Feb 24 16:12:59 CET 2020
      Start Level 20
      Bundle Classpath    .,lib/geronimo-osgi-locator.jar
      Exported Packages   javax.ws.rs,version=2.1.0
      javax.ws.rs.client,version=2.1.0
      javax.ws.rs.container,version=2.1.0
      javax.ws.rs.core,version=2.1.0
      javax.ws.rs.ext,version=2.1.0
      javax.ws.rs.sse,version=2.1.0
      Imported Packages   javax.net.ssl,version=0.0.0.JavaSE_001_008 from org.apache.felix.framework (0)
      javax.xml.bind.annotation,version=2.2.1 from org.apache.servicemix.specs.jaxb-api-2.2 (1)
      javax.xml.bind.annotation.adapters,version=2.2.1 from org.apache.servicemix.specs.jaxb-api-2.2 (1)
      javax.xml.namespace,version=2.1.0 from org.apache.felix.framework (0)
      org.osgi.framework,version=1.9.0 from org.apache.felix.framework (0)
      org.osgi.util.tracker,version=1.5.2 from org.apache.felix.framework (0)
      Manifest Headers    Bnd-LastModified: 1550757575220
      Build-Jdk: 1.8.0_161
      Built-By: sac
      Bundle-ClassPath: ., lib/geronimo-osgi-locator.jar
      Bundle-ManifestVersion: 2
      Bundle-Name: Apache Aries JAX-RS Specification API
      Bundle-SymbolicName: org.apache.aries.javax.jax.rs-api
      Bundle-Version: 1.0.4
      Created-By: Apache Maven 3.5.4
      Export-Package: javax.ws.rs; version="2.1"; uses:="javax.ws.rs.core", javax.ws.rs.client; version="2.1"; uses:="javax.net.ssl, javax.ws.rs, javax.ws.rs.core", javax.ws.rs.container; version="2.1"; uses:="javax.ws.rs.core", javax.ws.rs.core; version="2.1"; uses:="javax.ws.rs, javax.xml.bind.annotation, javax.xml.bind.annotation.adapters, javax.xml.namespace", javax.ws.rs.ext; version="2.1"; uses:="javax.ws.rs, javax.ws.rs.core", javax.ws.rs.sse; version="2.1"; uses:="javax.ws.rs.client, javax.ws.rs.core"
      Import-Package: org.apache.geronimo.osgi.registry.api; resolution:=optional, javax.net.ssl, javax.ws.rs; version="[2.1, 3)", javax.ws.rs.core; version="[2.1, 3)", javax.xml.bind.annotation, javax.xml.bind.annotation.adapters, javax.xml.namespace, org.osgi.framework, org.osgi.util.tracker
      Manifest-Version: 1.0
      Private-Package: lib, org.apache.geronimo.osgi.locator
      Provide-Capability: osgi.contract; osgi.contract=JavaJAXRS; uses:="javax.ws.rs, javax.ws.rs.client, javax.ws.rs.container, javax.ws.rs.core, javax.ws.rs.ext, javax.ws.rs.sse"; version:List="2.1, 2, 1.1"
      Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=1.8))"
      Tool: Bnd-4.0.0.201805111645
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            mkovacek Matija Kovacek
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: