This is an automated email from the ASF dual-hosted git repository.

cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/felix-dev.git


The following commit(s) were added to refs/heads/master by this push:
     new 598b9f0198 Update Felix HTTP documentation (#303)
598b9f0198 is described below

commit 598b9f019803216059fad3b4ecd2d964a042b49a
Author: Paul <p...@blueconic.com>
AuthorDate: Sun Apr 14 15:27:37 2024 +0200

    Update Felix HTTP documentation (#303)
    
    * Update README.md
    
    Add information about jetty bundles and ee support.
    
    * Update README.md
    
    - Removed cometd, last released version is from 2014 and nowadays, 
websockets should be used instead
    - update bundle versions
    - add jetty 12 and wrappers bundles
    - update jetty properties
    - update code examples
    - update servlet, filter properties. Add OSGi reference links for full 
documentation.
    
    * Update README.md
    
    - add links to felix bundles
    
    * Update README.md
    
    Add EoL link
    
    * Update README.md
    
    * Update README.md
    
    * Update README.md
    
    Filter order
    
    * Update README.md
    
    Fix link to WS.
    
    * Update README.md
    
    Update HTTP/2 configuration for Jetty 12 bundle.
    
    * Update README.md
    
    * Update README.md
    
    Add links to bundles.
    
    * Update README.md
    
    Update links
    
    * Update README.md
    
    * Update README.md
    
    * maintenance/SSL-trust-all
    - Add option to trust all SSL certificates, regardless of keystore 
configuration (ignored when set to true)
    
    * maintenance/SSL-trust-all
    - Fix comment
    
    * Add reference to the light jar.
    
    * maintenance/SSL-trust-all
    - Set trust all, while keeping other configuration options intact
    
    * Revert "maintenance/SSL-trust-all"
    
    This reverts commit 51a5c4376a46da55e5a5118e6553e2e6fd8d5d0d.
    
    * Revert "maintenance/SSL-trust-all"
    
    This reverts commit ab19c6710ef8dd7e04a8f7cb79aee0a92854c9c6.
    
    * Revert "maintenance/SSL-trust-all"
    
    This reverts commit df0a5f76804d2fa5ec3dd47dbe8ef08351dacb95.
    
    * Update README.md
    
    Add maven light
    
    * Update README.md
    
    Update links to 8.1
---
 http/README.md | 162 ++++++++++++++++++++++++++++++++++-----------------------
 1 file changed, 96 insertions(+), 66 deletions(-)

diff --git a/http/README.md b/http/README.md
index a49290a99d..0c009818ce 100644
--- a/http/README.md
+++ b/http/README.md
@@ -1,44 +1,74 @@
 # Apache Felix HTTP Service
 
-This is an implementation of the [HTTP Whiteboard Service as described in 
chapter 
140](https://osgi.org/specification/osgi.cmpn/7.0.0/service.http.whiteboard.html)
 of the OSGi Compendium (R7) in combination with an implementation of the [HTTP 
Service Specification as described in chapter 
102](https://osgi.org/specification/osgi.cmpn/7.0.0/service.http.html) of the 
OSGi Compendium. The goal is to provide a standard and simplified way to 
register servlets, listeners, filters, and resources [...]
+This is an implementation of the [R8.1 Whiteboard Specification for Jakarta 
Servlet](https://docs.osgi.org/specification/osgi.cmpn/8.1.0/service.servlet.html),
 [HTTP Whiteboard Service as described in chapter 
140](https://osgi.org/specification/osgi.cmpn/7.0.0/service.http.whiteboard.html)
 of the OSGi Compendium (R7) in combination with an implementation of the [HTTP 
Service Specification as described in chapter 
102](https://osgi.org/specification/osgi.cmpn/7.0.0/service.http.html) of th 
[...]
 
   * Standard OSGi Http Service implementation
   * Standard OSGi Http Whiteboard implementation
-  * Run either with Jetty or inside your own application server using the 
servlet bridge
+  * Run either with Jetty (version 11 or 12) bundle or inside your own 
application server using the servlet bridge
+    * [Felix HTTP Jetty 
12](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.jetty12)
 is the preferred bundle of choice as it supports JavaEE 8 and JakartaEE 8 with 
the `javax` namespace, JakartaEE 9/10/11/future versions with the `jakarta` 
namespace.
+      * [Jetty WebSocket support](https://github.com/apache/felix-dev/pull/298)
+    * [Felix HTTP Jetty 
11](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.jetty)
 is the predecessor of the Jetty 12 bundle, which shipped with [Jetty 
9.4.x](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.jetty/4.2.26)
 in the 4.x range, [Jetty 
11.x](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.jetty/5.1.10)
 in the 5.x range.
   * Correctly versioned Servlet API.
 
 ## Installing
 
 The Apache Felix HTTP Service project includes several bundles.
 
-  * `org.apache.felix.http.servlet-api` - Provides the Servlet API (versions 
2.6, 3.0, and 3.1 of the Servlet specification)
-  * `org.apache.felix.http.api` - Provides the OSGi APIs for the Http 
Whiteboard and Http Service.
-  * `org.apache.felix.http.jetty` - Implementation that is embedding Jetty 
server (currently Jetty 9, requiring Java 8). This bundle includes the http.api 
bundle.
-  * `org.apache.felix.http.sslfilter` - Servlet filter for handling SSL 
termination.
-  * `org.apache.felix.http.bridge` - Implementation that uses the host 
application server (bridged mode). Must be used with the proxy (see below)
-  * `org.apache.felix.http.cometd` - Adds Comet/Ajax Push functionality to the 
HTTP Service implementation.
-  * `org.apache.felix.http.proxy` - Proxy that is needed inside WAR when 
deployed inside an application server.
+  * 
[`org.apache.felix.http.servlet-api`](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.servlet-api)
 - Provides the Servlet API (versions 2.6, 3.0, 3.1, 4.0, 5.0 and 6.0 of the 
Servlet specification)
+  * 
[`org.apache.felix.http.api`](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.api)
 - Provides the OSGi APIs for the Http Whiteboard and Http Service.
+  * 
[`org.apache.felix.http.jetty12`](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.jetty12)
 - Implementation that is embedding Jetty server (currently Jetty 12.x, 
requiring Java 17). This bundle includes the http.api bundle. It's the the 
preferred Felix Jetty bundle to use, as Jetty 11 will be [EoL in 
2025](https://github.com/jetty/jetty.project/issues/10485).
+  * 
[`org.apache.felix.http.jetty`](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.jetty)
 - Predecessor implementation that is embedding Jetty server (currently Jetty 
11.x, requiring Java 11). This bundle includes the http.api bundle. 
+  * 
[`org.apache.felix.http.sslfilter`](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.sslfilter)
 - Servlet filter for handling SSL termination.
+  * 
[`org.apache.felix.http.bridge`](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.bridge)
 - Implementation that uses the host application server (bridged mode). Must be 
used with the proxy (see below)
+  * 
[`org.apache.felix.http.proxy`](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.proxy)
 - Proxy that is needed inside WAR when deployed inside an application server.
+  * 
[`org.apache.felix.http.wrappers`](https://mvnrepository.com/artifact/org.apache.felix/org.apache.felix.http.wrappers)
 offers wrapper classes that can be used when transitioning to the `jakarta` 
namespace, while having libraries that don't offer a jakartified version yet. 
 
 Note that as of version **3.x**, the Servlet APIs are **no longer** packaged 
with the implementation bundles! If you are migrating from lower versions, be 
sure to add the
 `org.apache.felix.http.servlet-api` (or any other compatible Serlvet API 
bundle) to your
 classpath and deployment!
 
+### Light bundle
+If you would like to use your own Jetty jar instead of the one packaged with 
the Felix Jetty bundles, you can use the `light` variant.
+When building the Felix Jetty bundle with Maven (`mvn clean install`), the 
`light` bundle will be created in the `target` directory, postfixed with 
`-light.jar`.
+This jar can be deployed to your Felix OSGi environment, along with a 
compatible Jetty jar.
+
+Or just use maven to include the dependency with the `light` classifier. 
+```
+<dependency>
+   <groupId>org.apache.felix</groupId>
+   <artifactId>org.apache.felix.http.jetty12</artifactId>
+   <version>1.0.2</version>
+   <classifier>light</classifier>
+   <scope>runtime</scope>
+</dependency>
+```
+
 ## Installing additional bundles for the optional HTTP/2 support with jetty
 
-The jetty implementation uses the OSGi ServiceLoader mediator technique to 
find certain pluggable components that are required for HTTP/2 support.  Your 
OSGi runtime must first have the bundles needed for OSGi ServiceLoader support 
deployed. Background information about the OSGi ServiceLoader integration is 
discussed 
[here](https://blog.osgi.org/2013/02/javautilserviceloader-in-osgi.html)
+Configure `org.apache.felix.http2.enable=true` to enable HTTP/2 in Jetty.
+
+The Jetty implementation uses the OSGi ServiceLoader mediator technique to 
find certain pluggable components that are required for HTTP/2 support. Your 
OSGi runtime must first have the bundles needed for OSGi ServiceLoader support 
deployed. Background information about the OSGi ServiceLoader integration is 
discussed 
[here](https://blog.osgi.org/2013/02/javautilserviceloader-in-osgi.html)
 
 Deploying the following set of bundles would be one way to enable the 
ServiceLoader mediator support:
 
-  * `org.apache.aries.spifly:org.apache.aries.spifly.dynamic.bundle:1.3.0`
-  * `org.apache.aries:org.apache.aries.util:1.1.3`
-  * `org.ow2.asm:asm:8.0.1`
-  * `org.ow2.asm:asm-analysis:8.0.1`
-  * `org.ow2.asm:asm-commons:8.0.1`
-  * `org.ow2.asm:asm-tree:8.0.1`
-  * `org.ow2.asm:asm-util:8.0.1`
+  * 
[`org.apache.aries.spifly:org.apache.aries.spifly.dynamic.bundle:1.3.7`](https://mvnrepository.com/artifact/org.apache.aries.spifly/org.apache.aries.spifly.dynamic.bundle)
+  * [`org.ow2.asm:asm:9.7`](https://mvnrepository.com/artifact/org.ow2.asm/asm)
+  * 
[`org.ow2.asm:asm-analysis:9.7`](https://mvnrepository.com/artifact/org.ow2.asm/asm-analysis)
+  * 
[`org.ow2.asm:asm-commons:9.7`](https://mvnrepository.com/artifact/org.ow2.asm/asm-commons)
+  * 
[`org.ow2.asm:asm-tree:9.7`](https://mvnrepository.com/artifact/org.ow2.asm/asm-tree)
+  * 
[`org.ow2.asm:asm-util:9.7`](https://mvnrepository.com/artifact/org.ow2.asm/asm-util)
+
+### Jetty 12 bundle
+For the Jetty 12 bundle, start the following set of bundles _before_ the Jetty 
12 bundle, but after the beforementioned ServiceLoader bundles (the order is 
important and can be configured in `felix.auto.start.1`). 
+The Jetty version should correspond with the version used in the [Jetty 12 
bundle](https://github.com/apache/felix-dev/blob/master/http/jetty12/pom.xml#L44).
 
-Next, depending on your server environment you must choose only one of the 
following sets
-of additional bundles to deploy [as described in the jetty 
documentation](https://www.eclipse.org/jetty/documentation/current/alpn-chapter.html)
+* 
[`jetty-alpn-server-${jetty.version}`](https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-alpn-server)
+* 
[`jetty-alpn-java-server-${jetty.version}`](https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-alpn-java-server)
+
+### Jetty 11 bundle
+
+For the predecessor Jetty 11 bundle, depending on your server environment, you 
must choose only one of the following sets
+of additional bundles to deploy [as described in the jetty 
documentation](https://eclipse.dev/jetty/documentation/jetty-9/index.html#alpn)
 
 1. For java 9 or later:
     * `org.eclipse.jetty.alpn:alpn-api:1.1.3.v20160715`
@@ -58,26 +88,37 @@ of additional bundles to deploy [as described in the jetty 
documentation](https:
 
 The OSGi whiteboard implementation simplifies the task of registering 
servlets, filters, resources, listeners, and servlet contexts. For a complete 
introduction, please refer to the OSGi R7 Compendium or Enterprise 
specification.
 
-For a short introduction: Such a whiteboard service can be registered by 
exporting it as a service, making it no longer necessary to track and use the 
`HttpService` directly. The
-whiteboard implementation detects all `javax.servlet.Servlet` and 
`javax.servlet.Filter` services with the right service properties. Let us 
illustrate the usage by registering a servlet:
+For a short introduction: Such a whiteboard service can be registered by 
exporting it as a service, making it no longer necessary to track and use the 
`HttpService` directly (or the `ExtHttpService` in legacy implementations, for 
registering filters). The
+whiteboard implementation detects all `jakarta.servlet.Servlet` and 
`jakarta.servlet.Filter` services with the right service properties. Let us 
illustrate the usage by registering a servlet and a filter:
 
 ```java
 public class Activator implements BundleActivator {
-    private ServiceRegistration registration;
+    private ServiceRegistration<Servlet> servletRegistration;
+    private ServiceRegistration<Filter> filterRegistration;
 
     public void start(BundleContext context) throws Exception {
-        Hashtable props = new Hashtable();
-        props.put("osgi.http.whiteboard.servlet.pattern", "/hello");
-        props.put("servlet.init.message", "Hello World!");
+        Hashtable propsServlet = new Hashtable();
+        
propsServlet.put(HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_PATTERN, 
"/hello");
+        
propsServlet.put(HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_ASYNC_SUPPORTED,
 true);
+        
propsServlet.put(HttpWhiteboardConstants.HTTP_WHITEBOARD_SERVLET_INIT_PARAM_PREFIX
 + "message", "Hello World servlet!");
+
+        this.servletRegistration = 
context.registerService(Servlet.class.getName(), new HelloWorldServlet(), 
propsServlet);
+
+        Hashtable propsFilter = new Hashtable();
+        propsFilter.put(HttpWhiteboardConstants.HTTP_WHITEBOARD_FILTER_REGEX, 
".*");
+        
propsFilter.put(HttpWhiteboardConstants.HTTP_WHITEBOARD_FILTER_ASYNC_SUPPORTED, 
true);
+        
propsFilter.put(HttpWhiteboardConstants.HTTP_WHITEBOARD_FILTER_INIT_PARAM_PREFIX
 + "message", "Hello World filter!");
 
-        this.registration = context.registerService(Servlet.class.getName(), 
new HelloWorldServlet(), props);
+        this.filterRegistration = 
context.registerService(Filter.class.getName(), new HelloWorldFilter(), 
propsFilter);
     }
 
     public void stop(BundleContext context) throws Exception {
-        this.registration.unregister();
+        this.servletRegistration.unregister();
+        this.filterRegistration.unregister();
     }
 }
 ```
+An implementation note for when using the Felix HTTP Jetty 12 bundle: only 
registering a filter without a servlet, will not work. Make sure that there is 
a servlet registered (on the same path as the filter) when registering a 
filter, even when that servlet is not hit eventually.
 
 To ensure the HTTP whiteboard service picks up your servlet and filter 
correctly, your service
 registration *must* provide several service properties.
@@ -85,21 +126,37 @@ registration *must* provide several service properties.
 
 ### Servlet service properties
 
+See full reference in the [OSGi 
specification](https://docs.osgi.org/specification/osgi.cmpn/8.1.0/service.servlet.html#service.servlet-i21223311).
+The most important properties are:
+
   * `osgi.http.whiteboard.servlet.pattern` - defines the servlet pattern to 
register the servlet under, should be a path as defined in the Servlet 
specification.
   * `osgi.http.whiteboard.context.select` - Filter expression to select the 
servlet context (optional).
+  * `osgi.http.whiteboard.servlet.asyncSupported` - Declares whether the 
servlet supports the asynchronous operation mode. Allowed values are true and 
false independent of case. Defaults to false. (optional)
+  * `osgi.http.whiteboard.servlet.multipart.enable` - Enables support for 
multipart configuration on the servlet. Allowed values are true and false 
independent of case. Defaults to false. (optional)
   * `servlet.init.*` - these properties (sans the `servlet.init.` prefix) are 
made available throught the `ServletConfig` object of your servlet. This allows 
you to supply your servlet initialization parameters as you would normally do 
in the web descriptor (web.xml).
 
 ### Filter service properties
 
+See full reference in the [OSGi 
specification](https://docs.osgi.org/specification/osgi.cmpn/8.1.0/service.servlet.html#d0e87922)
 .
+The most important properties are:
+
   * `osgi.http.whiteboard.filter.regex` - The regular expression pattern to 
register filter with.
   * `osgi.http.whiteboard.context.select` - Filter expression to select the 
servlet context (optional).
-  * `service.ranking` - an integer value that allows you to specify where in 
the filter chain the filter should be registered. Higher rankings will be 
placed first in the chain, that is, filter chains are sorted in descending 
order. If omitted, a ranking of zero (0) is used.
+  * `osgi.http.whiteboard.filter.pattern` - Apply this servlet filter to the 
specified URL path patterns. The format of the patterns is specified in the 
servlet specification.
+  * `osgi.http.whiteboard.filter.asyncSupported` - Declares whether the 
servlet filter supports asynchronous operation mode. Allowed values are true 
and false independent of case. Defaults to false. (optional)
   * `filter.init.*` - these properties (sans the `filter.init.` prefix) are 
made available throught the `FilterConfig` object of your filter. This allows 
you to supply your filter initialization parameters as you would normally do in 
the web descriptor (web.xml).
 
+The order of filters is no longer managed by the `service.ranking` property, 
but by implementing the `compareTo` method. 
+Multiple servlet filters can process the same servlet request/response. If 
more than one Filter matches, they are processed in ranking order, as specified 
in `ServiceReference.compareTo`. The servlet filter with the highest ranking is 
processed first in the filter chain, while the servlet filter with the lowest 
ranking is processed last, before the Servlet.service method is called. After 
the servlet completes its service method the filter chain is unwound in reverse 
order.
+
 ### ServletContextHelper service properties
 
+See full reference in the [OSGi 
specification](https://docs.osgi.org/specification/osgi.cmpn/8.1.0/service.servlet.html#service.http.whiteboard.servletcontext).
 
+The most important properties are:
+
   * `osgi.http.whiteboard.context.name` - the identifier of the registered 
HTTP context to be referenced by a servlet or filter service
   * `osgi.http.whiteboard.context.path` - The path of the servlet context.
+  * `context.init.*` - Properties starting with this prefix are provided as 
init parameters through the ServletContext.getInitParameter and 
ServletContext.getInitParameterNames methods. The context.init. prefix is 
removed from the parameter name.
 
 ## Using the HttpService
 
@@ -322,19 +379,16 @@ non-standard request headers are used for this:
 
 The service can both be configured using OSGi environment properties and using 
Configuration Admin. The service PID for
 this service is `"org.apache.felix.http"`. If you use both methods, 
Configuration Admin takes precedence. The following
-properties can be used (some legacy property names still exist but are not 
documented here on purpose):
+properties can be used (some legacy property names still exist but are not 
documented here on purpose). As properties might change over time, the actual 
list of properties can be found [here for the Jetty 12 
bundle](https://github.com/apache/felix-dev/blob/master/http/jetty12/src/main/java/org/apache/felix/http/jetty/internal/JettyConfig.java)
 and [here for the Jetty 11 
bundle](https://github.com/apache/felix-dev/blob/master/http/jetty/src/main/java/org/apache/felix/http/jetty/internal/J
 [...]
 
 | Property | Description |
 |--|--|
-| `org.apache.felix.http.debug` | Flag to enable debugging for this service 
implementation. The default is `false`. |
 | `org.apache.felix.http.host` | Host name or IP Address of the interface to 
listen on. The default is `null` causing Jetty to listen on all interfaces. |
 | `org.osgi.service.http.port` | The port used for servlets and resources 
available via HTTP. The default is `8080`. See [port settings 
below](#http-port-settings) for additional information. A negative port number 
has the same effect as setting `org.apache.felix.http.enable` to `false`. |
 | `org.osgi.service.http.port.secure` | The port used for servlets and 
resources available via HTTPS. The default is `8443`. See [port settings 
below](#http-port-settings) for additional information. A negative port number 
has the same effect as setting `org.apache.felix.https.enable` to `false`. |
 | `org.apache.felix.http.context_path` | The servlet Context Path to use for 
the Http Service. If this property is not configured it  defaults to "/". This 
must be a valid path starting with a slash and not  ending with a slash (unless 
it is the root context). |
 | `org.apache.felix.http.timeout` | Connection timeout in milliseconds. The 
default is `60000` (60 seconds). |
 | `org.apache.felix.http.session.timeout` | Allows for the specification of 
the Session life time as a number of minutes. This property serves the same 
purpose as the `session-timeout` element in a Web Application descriptor. The 
default is "0" (zero) for no timeout at all. |
-| `org.apache.felix.http.nio` | Flag to enable the use of NIO instead of 
traditional IO for HTTP. One consequence of using NIO with HTTP is that the 
bundle needs at least a Java 5 runtime. The default is `true`. |
-| `org.apache.felix.https.nio` | Flag to enable the use of NIO instead of 
traditional IO for HTTPS. One consequence of using NIO with HTTPS is that the 
bundle needs at least a Java 5 runtime. If this property is not set the 
(default) value of the `org.apache.felix.http.nio` property is used. |
 | `org.apache.felix.http.enable` | Flag to enable the use of HTTP. The default 
is `true`. |
 | `org.apache.felix.https.enable` | Flag to enable the user of HTTPS. The 
default is `false`. |
 | `org.apache.felix.https.keystore` | The name of the file containing the 
keystore. |
@@ -363,10 +417,8 @@ properties can be used (some legacy property names still 
exist but are not docum
 | `org.apache.felix.http.runtime.init.` | Properties starting with this prefix 
are added as service registration properties to the HttpServiceRuntime service. 
The prefix is removed for the property name. |
 | `org.apache.felix.jetty.gziphandler.enable` | Whether the server should use 
a server-wide gzip handler. Default is false. |
 | `org.apache.felix.jetty.gzip.minGzipSize` | The minimum response size to 
trigger dynamic compression. Default is GzipHandler.DEFAULT_MIN_GZIP_SIZE. |
-| `org.apache.felix.jetty.gzip.compressionLevel` | The compression level to 
use. Default is Deflater.DEFAULT_COMPRESSION. |
 | `org.apache.felix.jetty.gzip.inflateBufferSize` | The size in bytes of the 
buffer to inflate compressed request, or <= 0 for no inflation. Default is -1. |
 | `org.apache.felix.jetty.gzip.syncFlush` | True if Deflater#SYNC_FLUSH should 
be used, else Deflater#NO_FLUSH will be used. Default is false. |
-| `org.apache.felix.jetty.gzip.excludedUserAgents` | The regular expressions 
matching additional user agents to exclude. Default is none. |
 | `org.apache.felix.jetty.gzip.includedMethods` | The additional http methods 
to include in compression. Default is none. |
 | `org.apache.felix.jetty.gzip.excludedMethods` | The additional http methods 
to exclude in compression. Default is none. |
 | `org.apache.felix.jetty.gzip.includedPaths` | The additional path specs to 
include. Inclusion takes precedence over exclusion. Default is none. |
@@ -380,32 +432,12 @@ properties can be used (some legacy property names still 
exist but are not docum
 | `org.apache.felix.jetty.alpn.protocols` | The ALPN protocols to consider. 
Default is h2, http/1.1. |
 | `org.apache.felix.jetty.alpn.defaultProtocol` | The default protocol when 
negotiation fails. Default is http/1.1. |
 
-### All-in-one-bundle configuration properties
-
-Additionally, the all-in-one bundle uses the following environment properties 
(no support for Configuration Admin):
-
-| Property | Description |
-|--|--|
-| `org.apache.felix.http.jettyEnabled` | If `true`, the embedded Jetty server 
is used as HTTP container. The default is `false`. |
-| `org.apache.felix.http.whiteboardEnabled` | If `true`, the whiteboard-style 
registration of servlets and filters is enabled. The default is `false`. |
-| `org.apache.felix.http.cometdEnabled` | If `true` the CometD/Ajax Push 
feature is enabled. The default is `false`. |
-
 ### Multiple Servers
 
 It is possible to configure several Http Services, each running on a different 
port. The first service can be configured as outlined above using the service 
PID for `"org.apache.felix.http"`. Additional servers can be configured through 
OSGi factory configurations using `"org.apache.felix.http"` as the factory PID. 
The properties for the configuration are outlined as above.
 
 The default server using the PID `"org.apache.felix.http"` can be disabled by 
specifying a negative port and then all servers can be used through factory 
configurations.
 
-
-### CometD configuration properties
-
-The CometD bundle supports the following configuration options, using the PID 
`org.apache.felix.http.cometd` or through
-environment properties:
-
-| Property | Description |
-|--|--|
-| `org.apache.felix.http.cometd.path` | Defines the path for the CometD 
endpoint. Default is `/system/cometd`. |
-
 ### SSL filter configuration properties
 
 The SSL-filter bundle supports the following configuration options, using the 
PID
@@ -482,42 +514,40 @@ A set of simple examples illustrating the various 
features are available.
 
   * Whiteboard sample: 
<https://github.com/apache/felix-dev/tree/master/http/samples/whiteboard>
   * Servlet bridge sample: 
<https://github.com/apache/felix-dev/tree/master/http/samples/bridge/>
-  * CometD sample: 
<https://github.com/apache/felix-dev/tree/master/http/samples/cometd/>
-
 
 ## Maven Artifacts
 
-This is a list of the most recent artifacts at the time of writing this 
document. There might already be never versions available:
+This is a list of the most recent artifacts at the time of writing this 
document. There might already be newer versions available:
 
 ```xml
 <dependency>
     <groupId>org.apache.felix</groupId>
     <artifactId>org.apache.felix.http.servlet-api</artifactId>
-    <version>1.1.2</version>
+    <version>3.0.0</version>
 </dependency>
 <dependency>
     <groupId>org.apache.felix</groupId>
-    <artifactId>org.apache.felix.http.jetty</artifactId>
-    <version>4.0.14</version>
+    <artifactId>org.apache.felix.http.jetty12</artifactId>
+    <version>1.0.2</version>
 </dependency>
 <dependency>
     <groupId>org.apache.felix</groupId>
     <artifactId>org.apache.felix.http.bridge</artifactId>
-    <version>4.0.8</version>
+    <version>5.1.6</version>
 </dependency>
 <dependency>
     <groupId>org.apache.felix</groupId>
-    <artifactId>org.apache.felix.http.cometd</artifactId>
-    <version>2.3.2</version>
+    <artifactId>org.apache.felix.http.proxy</artifactId>
+    <version>4.0.0</version>
 </dependency>
 <dependency>
     <groupId>org.apache.felix</groupId>
-    <artifactId>org.apache.felix.http.proxy</artifactId>
-    <version>3.0.6</version>
+    <artifactId>org.apache.felix.http.wrappers</artifactId>
+    <version>1.1.2</version>
 </dependency>
 <dependency>
     <groupId>org.apache.felix</groupId>
     <artifactId>org.apache.felix.http.sslfilter</artifactId>
-    <version>1.2.6</version>
+    <version>2.0.2</version>
 </dependency>
 ```

Reply via email to