diff --git a/pax-web-api/src/main/java/org/ops4j/pax/web/service/WebContainerConstants.java b/pax-web-api/src/main/java/org/ops4j/pax/web/service/WebContainerConstants.java
index b1113d3..2c73528 100644
--- a/pax-web-api/src/main/java/org/ops4j/pax/web/service/WebContainerConstants.java
+++ b/pax-web-api/src/main/java/org/ops4j/pax/web/service/WebContainerConstants.java
@@ -118,6 +118,7 @@ public interface WebContainerConstants {
 	String PROPERTY_SESSION_COOKIE_SECURE = PID + ".session.cookie.secure";
 	String PROPERTY_SESSION_LAZY_LOAD = PID + ".session.lazyload";
 	String PROPERTY_SESSION_STORE_DIRECTORY = PID + ".session.storedirectory";
+	String PROPERTY_USE_SHARED_HTTPCONTEXT_PER_DEFAULT = PID + ".context.useSharedPerDefault";
 
 	String PROPERTY_TEMP_DIR = "javax.servlet.context.tempdir";
 
diff --git a/pax-web-runtime/src/main/java/org/ops4j/pax/web/service/internal/ConfigurationImpl.java b/pax-web-runtime/src/main/java/org/ops4j/pax/web/service/internal/ConfigurationImpl.java
index aa9b38b..d5dc7ba 100644
--- a/pax-web-runtime/src/main/java/org/ops4j/pax/web/service/internal/ConfigurationImpl.java
+++ b/pax-web-runtime/src/main/java/org/ops4j/pax/web/service/internal/ConfigurationImpl.java
@@ -49,6 +49,7 @@ import static org.ops4j.pax.web.service.WebContainerConstants.PROPERTY_SESSION_L
 import static org.ops4j.pax.web.service.WebContainerConstants.PROPERTY_SESSION_STORE_DIRECTORY;
 import static org.ops4j.pax.web.service.WebContainerConstants.PROPERTY_SESSION_TIMEOUT;
 import static org.ops4j.pax.web.service.WebContainerConstants.PROPERTY_SESSION_URL;
+import static org.ops4j.pax.web.service.WebContainerConstants.PROPERTY_USE_SHARED_HTTPCONTEXT_PER_DEFAULT;
 import static org.ops4j.pax.web.service.WebContainerConstants.PROPERTY_SSL_CLIENT_AUTH_NEEDED;
 import static org.ops4j.pax.web.service.WebContainerConstants.PROPERTY_SSL_CLIENT_AUTH_WANTED;
 import static org.ops4j.pax.web.service.WebContainerConstants.PROPERTY_SSL_KEYPASSWORD;
@@ -502,6 +503,11 @@ public class ConfigurationImpl extends PropertyStore implements Configuration {
 	public String getSessionStoreDirectory() {
 		return getResolvedStringProperty(PROPERTY_SESSION_STORE_DIRECTORY);
 	}
+	
+	@Override
+	public Boolean isUseSharedHttpContextByDefault() {
+		return getResolvedBooleanProperty(PROPERTY_USE_SHARED_HTTPCONTEXT_PER_DEFAULT);
+	}
 
 	@Override
 	public String getWorkerName() {
diff --git a/pax-web-runtime/src/main/java/org/ops4j/pax/web/service/internal/HttpServiceStarted.java b/pax-web-runtime/src/main/java/org/ops4j/pax/web/service/internal/HttpServiceStarted.java
index 7ce6394..d998271 100644
--- a/pax-web-runtime/src/main/java/org/ops4j/pax/web/service/internal/HttpServiceStarted.java
+++ b/pax-web-runtime/src/main/java/org/ops4j/pax/web/service/internal/HttpServiceStarted.java
@@ -214,7 +214,7 @@ class HttpServiceStarted implements StoppableHttpService {
 								final HttpContext httpContext) throws ServletException,
 			NamespaceException {
 		final ContextModel contextModel = getOrCreateContext(httpContext);
-		LOG.debug("Register servlet (alias={}). Using context [{}]", alias, contextModel);
+		LOG.info("Register servlet (alias={}). Using context [{}]", alias, contextModel);
 		@SuppressWarnings("unchecked")
 		final ServletModel model = new ServletModel(contextModel, servlet,
 				alias, initParams, loadOnStartup, asyncSupported);
@@ -323,7 +323,13 @@ class HttpServiceStarted implements StoppableHttpService {
 
 	@Override
 	public WebContainerContext createDefaultHttpContext() {
-		return new DefaultHttpContext(serviceBundle, WebContainerContext.DefaultContextIds.DEFAULT.getValue());
+		if (serverController.getConfiguration().isUseSharedHttpContextByDefault()) {
+			LOG.info("createDefaultHttpContext returns SharedContext");
+			return createDefaultSharedHttpContext();
+		} else {
+			LOG.info("createDefaultHttpContext returns HttpContext for bundle {}", serviceBundle.getBundleId());
+			return createDefaultHttpContext(WebContainerContext.DefaultContextIds.DEFAULT.getValue());
+		}	
 	}
 
 	@Override
@@ -495,7 +501,7 @@ class HttpServiceStarted implements StoppableHttpService {
 	public void registerEventListener(final EventListener listener,
 									  final HttpContext httpContext) {
 		final ContextModel contextModel = getOrCreateContext(httpContext);
-		LOG.debug("Register event listener (listener={}). Using context [{}]", listener, contextModel);
+		LOG.info("Register event listener (listener={}). Using context [{}]", listener, contextModel);
 		final EventListenerModel model = new EventListenerModel(contextModel,
 				listener);
 		boolean serviceSuccess = false;
diff --git a/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/Configuration.java b/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/Configuration.java
index 503aaf0..0548b55 100644
--- a/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/Configuration.java
+++ b/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/Configuration.java
@@ -129,6 +129,20 @@ public interface Configuration {
 	String getSessionStoreDirectory();
 
 	Boolean getSessionLazyLoad();
+	
+	/**
+	 * The user of method org.osgi.service.http.HttpService.createDefaultHttpContext() is usually
+	 * (and should not be) aware of implementation used, so they can't call 
+	 * org.ops4j.pax.web.service.WebContainer.createDefaultSharedHttpContext() 
+	 * if they want to use shared context. <br/>
+	 * Therefore we provide a configuration parameter that controls the behavior of publicly available
+	 * method createDefaultHttpContext(). <br/>
+	 * If the parameter is not set, or is set to false, the per-bundle HttpContext is returned, as
+	 * in pre-6.1.0 versions. When it is set to true, the shared instance is returned.
+	 * 
+	 * @return true if should use shared HttpContext by default.
+	 */
+	Boolean isUseSharedHttpContextByDefault();
 
 	String getWorkerName();
 
diff --git a/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/model/package-info.java b/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/model/package-info.java
index e684627..47954a4 100644
--- a/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/model/package-info.java
+++ b/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/model/package-info.java
@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
  */
 
-@Version("6.0.0")
+@Version("6.1.0")
 package org.ops4j.pax.web.service.spi.model;
 
 import org.osgi.annotation.versioning.Version;
diff --git a/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/util/package-info.java b/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/util/package-info.java
index aabdd42..3df93db 100644
--- a/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/util/package-info.java
+++ b/pax-web-spi/src/main/java/org/ops4j/pax/web/service/spi/util/package-info.java
@@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
  */
 
-@Version("6.0.0")
+@Version("6.1.0")
 package org.ops4j.pax.web.service.spi.util;
 
 import org.osgi.annotation.versioning.Version;
diff --git a/pom.xml b/pom.xml
index cd6de08..d0df22d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -294,7 +294,7 @@
 								<obrRepository>NONE</obrRepository>
 							</configuration>
 						</execution>
-						<execution>
+						<!--execution>
 							<id>baseline</id>
 							<goals>
 								<goal>baseline</goal>
@@ -303,7 +303,7 @@
 								<comparisonVersion>${baseline.version}</comparisonVersion>
 								<failOnWarning>false</failOnWarning>
 							</configuration>
-						</execution>
+						</execution-->
 						<execution>
 							<id>cleanVersions</id>
 							<phase>generate-sources</phase>
