Felix
  1. Felix
  2. FELIX-1456

Contribution: Extended and improved HttpService

    Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: http-2.0.2
    • Fix Version/s: http-2.0.2
    • Component/s: HTTP Service
    • Labels:
      None

      Description

      I have created an improved version of the HttpService. A similar version has been deployed at my company (Enonic) for some time. Instead of hosting this code ourself, we (or I) tought it would be better to contribute this to Apache.

      So, the feaures:

      • Extended API to support servlet filters.
      • Backward compatible with standard HttpService (without Filter support).
      • A bridged implementation. Using HttpService from a standard WAR file inside your favourite container. Same as Equinox Servlet Bridge except with Filter support.
      • A jetty implementation (very influenced by the existing Felix implementation).
      • Seperate dispatcher so that we can have different "transports".

      Where's can I try it? Since I do not have committer rights (I would very much like so ) and I really to use Jira as a "source" and "patch" repository the code is hosted at my own place for now. This is so that you can try it out and tell me what you think. Go to http://github.com/srs/felix-contrib/tree/master for sources.

      1. http-service.tar.gz.md5
        0.1 kB
        Sten Roger Sandvik
      2. http-service.tar.gz
        32 kB
        Sten Roger Sandvik

        Issue Links

          Activity

          Hide
          Richard S. Hall added a comment -

          Thanks, Sten!

          In the long run, if we move forward with this, you should likely attach a tarball of the proposed contribution to this issue, but we can discuss the details of this later if that's the direction things go. For now, we need people who use the HTTP Service or need your extensions to it to check this out and give some feedback so we know how to proceed.

          Show
          Richard S. Hall added a comment - Thanks, Sten! In the long run, if we move forward with this, you should likely attach a tarball of the proposed contribution to this issue, but we can discuss the details of this later if that's the direction things go. For now, we need people who use the HTTP Service or need your extensions to it to check this out and give some feedback so we know how to proceed.
          Hide
          Sten Roger Sandvik added a comment -

          Ok, will do this if needed. Just say the word.

          Show
          Sten Roger Sandvik added a comment - Ok, will do this if needed. Just say the word.
          Hide
          Sten Roger Sandvik added a comment - - edited

          Added whiteboard implementation now. It's pretty early. Sample is also available. This implementation would then solve FELIX-64.

          Show
          Sten Roger Sandvik added a comment - - edited Added whiteboard implementation now. It's pretty early. Sample is also available. This implementation would then solve FELIX-64 .
          Hide
          Sten Roger Sandvik added a comment -

          Added a combined bundle that has the following features:

          • Uses "bridged" mode by default.
          • If org.apache.felix.http.jettyEnabled=true then jetty is started instead of bridged mode.
          • If org.apache.felix.http.whiteboardEnabled=true then whiteboard activator is also registered.

          This is a nice bundle if you distribute WAR's and standalone solutions (like sling). You only need the one same bundle in every variations.

          Show
          Sten Roger Sandvik added a comment - Added a combined bundle that has the following features: Uses "bridged" mode by default. If org.apache.felix.http.jettyEnabled=true then jetty is started instead of bridged mode. If org.apache.felix.http.whiteboardEnabled=true then whiteboard activator is also registered. This is a nice bundle if you distribute WAR's and standalone solutions (like sling). You only need the one same bundle in every variations.
          Hide
          Sten Roger Sandvik added a comment - - edited

          I have moved the source for the components from google to github. See http://github.com/srs/felix-contrib/tree/master

          Show
          Sten Roger Sandvik added a comment - - edited I have moved the source for the components from google to github. See http://github.com/srs/felix-contrib/tree/master
          Hide
          Sten Roger Sandvik added a comment -

          Extended http service implementation contribution.
          MD5 (http-service.tar.gz) = f64b724c976c2c9aa44f6f5902c55f4c

          Show
          Sten Roger Sandvik added a comment - Extended http service implementation contribution. MD5 (http-service.tar.gz) = f64b724c976c2c9aa44f6f5902c55f4c
          Hide
          Felix Meschberger added a comment -

          Thanks for submitting the patch.

          I have quickly checked it:

          • MD5 checksum matches
          • source files have license headers

          notes:

          • pom files are missing the license headers
          • the runner folder contains a jar file and some batch files

          we can probably fix the pom license header issue on import and decide upon handling the runner folder while importing into SVN

          Show
          Felix Meschberger added a comment - Thanks for submitting the patch. I have quickly checked it: MD5 checksum matches source files have license headers notes: pom files are missing the license headers the runner folder contains a jar file and some batch files we can probably fix the pom license header issue on import and decide upon handling the runner folder while importing into SVN
          Hide
          Sten Roger Sandvik added a comment -

          Ah, forgot the license in the pom. And the runner was acually not supposed to be there. I can fix it and upload new attachements. Will do first thing in the morning.

          Show
          Sten Roger Sandvik added a comment - Ah, forgot the license in the pom. And the runner was acually not supposed to be there. I can fix it and upload new attachements. Will do first thing in the morning.
          Hide
          Felix Meschberger added a comment -

          Excellent.

          I will start the vote on accepting your submission on monday (starting on friday tends to be problematic),

          Show
          Felix Meschberger added a comment - Excellent. I will start the vote on accepting your submission on monday (starting on friday tends to be problematic),
          Hide
          Sten Roger Sandvik added a comment -

          Included license headers in poms + removed runner directory.
          MD5 (http-service.tar.gz) = 7636857724ec5610e70d74a9e39b32da

          Show
          Sten Roger Sandvik added a comment - Included license headers in poms + removed runner directory. MD5 (http-service.tar.gz) = 7636857724ec5610e70d74a9e39b32da
          Hide
          Felix Meschberger added a comment -

          The acceptance vote has passed with 9 +1 votes (7 binding); no other votes were cast [1]

          I have submitted the IP Clearance form in Rev. 811343

          The IP Clearance vote has been started on general@incubator.a.o [2]

          [1] http://www.mail-archive.com/dev@felix.apache.org/msg11895.html
          [2] http://www.mail-archive.com/general@incubator.apache.org/msg22431.html

          Show
          Felix Meschberger added a comment - The acceptance vote has passed with 9 +1 votes (7 binding); no other votes were cast [1] I have submitted the IP Clearance form in Rev. 811343 The IP Clearance vote has been started on general@incubator.a.o [2] [1] http://www.mail-archive.com/dev@felix.apache.org/msg11895.html [2] http://www.mail-archive.com/general@incubator.apache.org/msg22431.html
          Hide
          Sten Roger Sandvik added a comment -

          Closing this issue since all code is now in svn. Further work should be done in their own task.

          Show
          Sten Roger Sandvik added a comment - Closing this issue since all code is now in svn. Further work should be done in their own task.
          Hide
          Felix Meschberger added a comment -

          Target at initial version http-2.0.0 and assign to Sten

          Show
          Felix Meschberger added a comment - Target at initial version http-2.0.0 and assign to Sten

            People

            • Assignee:
              Sten Roger Sandvik
              Reporter:
              Sten Roger Sandvik
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development