You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2015/12/21 10:42:50 UTC

svn commit: r1721112 - in /sling/trunk/launchpad/base/src/main: java/org/apache/sling/launchpad/base/impl/Sling.java java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java resources/sling.properties

Author: cziegeler
Date: Mon Dec 21 09:42:50 2015
New Revision: 1721112

URL: http://svn.apache.org/viewvc?rev=1721112&view=rev
Log:
SLING-5374 : Launchpad webapp should provide servlet contract capability

Modified:
    sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/Sling.java
    sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java
    sling/trunk/launchpad/base/src/main/resources/sling.properties

Modified: sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/Sling.java
URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/Sling.java?rev=1721112&r1=1721111&r2=1721112&view=diff
==============================================================================
--- sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/Sling.java (original)
+++ sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/Sling.java Mon Dec 21 09:42:50 2015
@@ -154,6 +154,8 @@ public class Sling {
 
     public static final String PROP_SYSTEM_PACKAGES = "org.apache.sling.launcher.system.packages";
 
+    public static final String PROP_EXTRA_CAPS = "org.apache.sling.launcher.system.capabilities.extra";
+
     /**
      * Timeout to wait for the initialized framework to actually stop for it to
      * be reinitialized. This is set to a second, which should be ample time to

Modified: sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java
URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java?rev=1721112&r1=1721111&r2=1721112&view=diff
==============================================================================
--- sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java (original)
+++ sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/webapp/SlingServletDelegate.java Mon Dec 21 09:42:50 2015
@@ -354,6 +354,10 @@ public class SlingServletDelegate extend
         props.put(
                  Sling.PROP_SYSTEM_PACKAGES,
                  packages + "; version=" + servletVersion);
+        // extra capabilities
+        final String servletCaps = "osgi.contract;osgi.contract=JavaServlet;version:Version=\" " + servletVersion + "\";" +
+                        "uses:=\"javax.servlet,javax.servlet.http,javax.servlet.descriptor,javax.servlet.annotation\"";
+        props.put(Sling.PROP_EXTRA_CAPS, servletCaps);
 
         // prevent system properties from being considered
         props.put(Sling.SLING_IGNORE_SYSTEM_PROPERTIES, "true");

Modified: sling/trunk/launchpad/base/src/main/resources/sling.properties
URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/base/src/main/resources/sling.properties?rev=1721112&r1=1721111&r2=1721112&view=diff
==============================================================================
--- sling/trunk/launchpad/base/src/main/resources/sling.properties (original)
+++ sling/trunk/launchpad/base/src/main/resources/sling.properties Mon Dec 21 09:42:50 2015
@@ -183,6 +183,13 @@ sling.bootdelegation.weblogic = weblogic
 sling.bootdelegation.ibm = com.ibm.xml.* 
 
 #
+# Extra framework capabilities
+# If you modify this and are running within a war, make sure to
+# also add the servlet contract capability (see SLING-5374)
+org.osgi.framework.system.capabilities.extra= \
+ ${org.apache.sling.launcher.system.capabilities.extra}
+
+#
 # Package Specifications for org.osgi.framework.system.packages
 #    osgi-core-packages       : OSGi Core Specification packages
 #    osgi-compendium-services : OSGi Compendium Specification packages