Uploaded image for project: 'Felix'
  1. Felix
  2. FELIX-5349

Add ManagedServiceFactory to HTTP service

    XMLWordPrintableJSON

Details

    Description

      I need to run multiple HTTP services, with different configurations.

      I was surprised to find that felix.http.jetty does not provide a ManagedServiceFactory and so were others as indicated in this stack overflow conversation: http://stackoverflow.com/questions/20074211/osgi-http-bundle-bind-to-two-ports

      I have experimented with creating a ManagedServiceFactory for the HTTP service myself. It is difficult to do externally to the http.jetty bundle, as it requires access to internal packages.

      I have therefore created a small patch to revision 1760954 which adds a ManagedServiceFactory, without changing any of the existing functionality of the ManagedService. This allows multiple http.jetty instances to be configured using WebConsole, fileinstall or other config admin clients.

      I have also added a new configuration property: org.apache.felix.http.name,
      which is added as a service property to the HTTP runtime instance. This makes it easier to target a specific HTTP whiteboard service than filtering on the port:
      HTTP_WHITEBOARD_TARGET + "=(org.apache.felix.http.name=web1)"

      I would be grateful if you would consider adding this functionality.

      Attachments

        1. factory.patch
          12 kB
          Derek Baum
        2. factory2.patch
          4 kB
          Derek Baum

        Activity

          People

            cziegeler Carsten Ziegeler
            db82407 Derek Baum
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: