You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ss...@apache.org on 2021/12/01 18:01:57 UTC

[sling-org-apache-sling-models-integration-tests] branch feature/SLING-10948-update-integration-tests updated: switch to bundle-parent 46 and OSGi annotations

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

sseifert pushed a commit to branch feature/SLING-10948-update-integration-tests
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-models-integration-tests.git


The following commit(s) were added to refs/heads/feature/SLING-10948-update-integration-tests by this push:
     new 92f6d4d  switch to bundle-parent 46 and OSGi annotations
92f6d4d is described below

commit 92f6d4d56ab2b27ad6fd5a2833c093743fc68a5d
Author: Stefan Seifert <st...@users.noreply.github.com>
AuthorDate: Wed Dec 1 18:57:38 2021 +0100

    switch to bundle-parent 46 and OSGi annotations
---
 bnd.bnd                                            |  7 +++
 pom.xml                                            | 69 +++++++++++-----------
 .../request/package-info.java}                     | 20 +------
 .../resource/package-info.java}                    | 20 +------
 .../package-info.java}                             | 20 +------
 .../implpicker/CustomLastImplementationPicker.java | 11 ++--
 .../package-info.java}                             | 20 +------
 .../implextend/package-info.java}                  | 20 +------
 .../package-info.java}                             | 20 +------
 .../package-info.java}                             | 20 +------
 .../package-info.java}                             | 20 +------
 .../AnotherTestBindingsValuesProvider.java         | 12 ++--
 .../it/services/TestBindingsValuesProvider.java    | 10 ++--
 .../models/it/services/TestResourceDecorator.java  |  8 +--
 ...ndingsValuesProvider.java => package-info.java} | 20 +------
 .../sling/models/it/servlets/PathBoundServlet.java |  8 ++-
 16 files changed, 90 insertions(+), 215 deletions(-)

diff --git a/bnd.bnd b/bnd.bnd
new file mode 100644
index 0000000..1aef1d3
--- /dev/null
+++ b/bnd.bnd
@@ -0,0 +1,7 @@
+Sling-Test-Regexp: .*Test
+
+Import-Package:\
+  org.apache.commons.beanutils;resolution:=optional,\
+  *
+
+-plugin: org.apache.sling.bnd.models.ModelsScannerPlugin
diff --git a/pom.xml b/pom.xml
index d7f5cb6..eac4659 100644
--- a/pom.xml
+++ b/pom.xml
@@ -22,14 +22,13 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.sling</groupId>
-        <artifactId>sling</artifactId>
-        <version>29</version>
+        <artifactId>sling-bundle-parent</artifactId>
+        <version>46</version>
         <relativePath/>
     </parent>
 
     <artifactId>org.apache.sling.models.integration-tests</artifactId>
     <version>0.0.1-SNAPSHOT</version>
-    <packaging>bundle</packaging>
 
     <name>Apache Sling Models Integration Tests</name>
     <description>
@@ -42,38 +41,14 @@
         <sling.java.version>8</sling.java.version>
         <!-- start with -DkeepITServerRunning=true to allow to rerun ITs or inspect the server after the ITs have been executed there -->
         <keepITServerRunning>false</keepITServerRunning>
+        <project.build.outputTimestamp>2021-12-01T00:00:00Z</project.build.outputTimestamp>
     </properties>
 
     <build>
         <plugins>
             <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <extensions>true</extensions>
-                <configuration>
-                    <instructions>
-                        <Sling-Test-Regexp>.*Test</Sling-Test-Regexp>
-                        <Export-Package>
-                            org.apache.sling.models.it.delegate.request,
-                            org.apache.sling.models.it.delegate.resource,
-                            org.apache.sling.models.it.exporter,
-                            org.apache.sling.models.it.implpicker,
-                            org.apache.sling.models.it.models,
-                            org.apache.sling.models.it.models.implextend,
-                            org.apache.sling.models.it.rtbound,
-                            org.apache.sling.models.it.rtboundpicker,
-                            org.apache.sling.models.it.services
-                        </Export-Package>
-                        <Import-Package>
-                            org.apache.commons.beanutils;resolution:=optional,
-                            *
-                        </Import-Package>
-                        <_plugin>
-                            <!-- Generate bundle header for Sling Models classes -->
-                            org.apache.sling.bnd.models.ModelsScannerPlugin
-                        </_plugin>
-                    </instructions>
-                </configuration>
+                <groupId>biz.aQute.bnd</groupId>
+                <artifactId>bnd-maven-plugin</artifactId>
                 <dependencies>
                     <dependency>
                         <groupId>org.apache.sling</groupId>
@@ -83,9 +58,12 @@
                 </dependencies>
             </plugin>
             <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-scr-plugin</artifactId>
-            </plugin>
+                <groupId>biz.aQute.bnd</groupId>
+                <artifactId>bnd-baseline-maven-plugin</artifactId>
+                <configuration>
+                    <skip>true</skip>
+                </configuration>
+           </plugin>
            <plugin>
                 <groupId>org.apache.rat</groupId>
                 <artifactId>apache-rat-plugin</artifactId>
@@ -121,7 +99,6 @@
                 <!-- the Sling instance is provisioned from the model in src/main/provisioning/model.txt -->
                 <groupId>org.apache.sling</groupId>
                 <artifactId>slingstart-maven-plugin</artifactId>
-                <version>1.9.12</version>
                 <extensions>true</extensions>
                 <executions>
                     <execution>
@@ -213,6 +190,28 @@
             <scope>provided</scope>
         </dependency>
 
+        <!-- OSGi annotations -->
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.annotation.versioning</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.component.annotations</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.service.metatype.annotations</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.sling</groupId>
+            <artifactId>org.apache.sling.servlets.annotations</artifactId>
+            <scope>provided</scope>
+        </dependency>
+
         <!-- Additional bundles needed by the Sling instance under test -->
         <dependency>
             <groupId>org.apache.sling</groupId>
@@ -295,13 +294,11 @@
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-api</artifactId>
-            <version>1.7.25</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
             <artifactId>slf4j-simple</artifactId>
-            <version>1.7.25</version>
             <scope>test</scope>
         </dependency>
         <dependency>
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/delegate/request/package-info.java
similarity index 58%
copy from src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
copy to src/main/java/org/apache/sling/models/it/delegate/request/package-info.java
index a9e1923..3e7e701 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/delegate/request/package-info.java
@@ -14,22 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.sling.models.it.services;
 
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
+@Version("1.0")
+package org.apache.sling.models.it.delegate.request;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
-public class TestBindingsValuesProvider extends HashMap<String, Object> {
-
-    public TestBindingsValuesProvider() {
-        super.put("testBindingsObject", Collections.singletonMap("name", "value"));
-    }
-}
+import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/delegate/resource/package-info.java
similarity index 58%
copy from src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
copy to src/main/java/org/apache/sling/models/it/delegate/resource/package-info.java
index a9e1923..a0f5c5b 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/delegate/resource/package-info.java
@@ -14,22 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.sling.models.it.services;
 
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
+@Version("1.0")
+package org.apache.sling.models.it.delegate.resource;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
-public class TestBindingsValuesProvider extends HashMap<String, Object> {
-
-    public TestBindingsValuesProvider() {
-        super.put("testBindingsObject", Collections.singletonMap("name", "value"));
-    }
-}
+import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/exporter/package-info.java
similarity index 58%
copy from src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
copy to src/main/java/org/apache/sling/models/it/exporter/package-info.java
index a9e1923..d6273ab 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/exporter/package-info.java
@@ -14,22 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.sling.models.it.services;
 
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
+@Version("1.0")
+package org.apache.sling.models.it.exporter;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
-public class TestBindingsValuesProvider extends HashMap<String, Object> {
-
-    public TestBindingsValuesProvider() {
-        super.put("testBindingsObject", Collections.singletonMap("name", "value"));
-    }
-}
+import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/models/it/implpicker/CustomLastImplementationPicker.java b/src/main/java/org/apache/sling/models/it/implpicker/CustomLastImplementationPicker.java
index d08192c..650e204 100644
--- a/src/main/java/org/apache/sling/models/it/implpicker/CustomLastImplementationPicker.java
+++ b/src/main/java/org/apache/sling/models/it/implpicker/CustomLastImplementationPicker.java
@@ -19,20 +19,17 @@
 package org.apache.sling.models.it.implpicker;
 
 import org.apache.commons.lang3.StringUtils;
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
 import org.apache.sling.api.resource.Resource;
 import org.apache.sling.models.spi.ImplementationPicker;
-import org.osgi.framework.Constants;
+import org.osgi.service.component.annotations.Component;
+import org.osgi.service.component.propertytypes.ServiceRanking;
 
 /**
  * This is a curious {@link ImplementationPicker} implementation for integration test
  * that picks the last implementation if the resource has the name "custom";
  */
-@Component
-@Service
-@Property(name = Constants.SERVICE_RANKING, intValue = 100)
+@Component(service = ImplementationPicker.class)
+@ServiceRanking(100)
 public class CustomLastImplementationPicker implements ImplementationPicker {
 
     public static final String CUSTOM_NAME = "custom";
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/implpicker/package-info.java
similarity index 58%
copy from src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
copy to src/main/java/org/apache/sling/models/it/implpicker/package-info.java
index a9e1923..c8a5b3e 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/implpicker/package-info.java
@@ -14,22 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.sling.models.it.services;
 
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
+@Version("1.0")
+package org.apache.sling.models.it.implpicker;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
-public class TestBindingsValuesProvider extends HashMap<String, Object> {
-
-    public TestBindingsValuesProvider() {
-        super.put("testBindingsObject", Collections.singletonMap("name", "value"));
-    }
-}
+import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/models/implextend/package-info.java
similarity index 58%
copy from src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
copy to src/main/java/org/apache/sling/models/it/models/implextend/package-info.java
index a9e1923..3d4840c 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/models/implextend/package-info.java
@@ -14,22 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.sling.models.it.services;
 
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
+@Version("1.0")
+package org.apache.sling.models.it.models.implextend;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
-public class TestBindingsValuesProvider extends HashMap<String, Object> {
-
-    public TestBindingsValuesProvider() {
-        super.put("testBindingsObject", Collections.singletonMap("name", "value"));
-    }
-}
+import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/models/package-info.java
similarity index 58%
copy from src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
copy to src/main/java/org/apache/sling/models/it/models/package-info.java
index a9e1923..d387b59 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/models/package-info.java
@@ -14,22 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.sling.models.it.services;
 
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
+@Version("1.0")
+package org.apache.sling.models.it.models;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
-public class TestBindingsValuesProvider extends HashMap<String, Object> {
-
-    public TestBindingsValuesProvider() {
-        super.put("testBindingsObject", Collections.singletonMap("name", "value"));
-    }
-}
+import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/rtbound/package-info.java
similarity index 58%
copy from src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
copy to src/main/java/org/apache/sling/models/it/rtbound/package-info.java
index a9e1923..19332e3 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/rtbound/package-info.java
@@ -14,22 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.sling.models.it.services;
 
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
+@Version("1.0")
+package org.apache.sling.models.it.rtbound;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
-public class TestBindingsValuesProvider extends HashMap<String, Object> {
-
-    public TestBindingsValuesProvider() {
-        super.put("testBindingsObject", Collections.singletonMap("name", "value"));
-    }
-}
+import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/rtboundpicker/package-info.java
similarity index 58%
copy from src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
copy to src/main/java/org/apache/sling/models/it/rtboundpicker/package-info.java
index a9e1923..950815c 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/rtboundpicker/package-info.java
@@ -14,22 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.sling.models.it.services;
 
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
+@Version("1.0")
+package org.apache.sling.models.it.rtboundpicker;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
-public class TestBindingsValuesProvider extends HashMap<String, Object> {
-
-    public TestBindingsValuesProvider() {
-        super.put("testBindingsObject", Collections.singletonMap("name", "value"));
-    }
-}
+import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/models/it/services/AnotherTestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/services/AnotherTestBindingsValuesProvider.java
index e7daa63..261f427 100644
--- a/src/main/java/org/apache/sling/models/it/services/AnotherTestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/services/AnotherTestBindingsValuesProvider.java
@@ -20,16 +20,16 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
+import org.osgi.service.component.annotations.Component;
 
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "sling-models-exporter")
+@Component(service = Map.class, property = {
+    "javax.script.name=sling-models-exporter"
+})
 public class AnotherTestBindingsValuesProvider extends HashMap<String, Object> {
+    private static final long serialVersionUID = 1L;
 
     public AnotherTestBindingsValuesProvider() {
         super.put("testBindingsObject2", Collections.singletonMap("name2", "value2"));
     }
+
 }
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
index a9e1923..e49e2d3 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
@@ -20,13 +20,11 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
+import org.osgi.service.component.annotations.Component;
 
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
+@Component(service = Map.class, property = {
+    "javax.script.name=*"
+})
 public class TestBindingsValuesProvider extends HashMap<String, Object> {
 
     public TestBindingsValuesProvider() {
diff --git a/src/main/java/org/apache/sling/models/it/services/TestResourceDecorator.java b/src/main/java/org/apache/sling/models/it/services/TestResourceDecorator.java
index fd9f96f..d615a3a 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestResourceDecorator.java
+++ b/src/main/java/org/apache/sling/models/it/services/TestResourceDecorator.java
@@ -18,17 +18,15 @@ package org.apache.sling.models.it.services;
 
 import javax.servlet.http.HttpServletRequest;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Reference;
-import org.apache.felix.scr.annotations.Service;
 import org.apache.sling.api.adapter.AdapterManager;
 import org.apache.sling.api.resource.Resource;
 import org.apache.sling.api.resource.ResourceDecorator;
 import org.apache.sling.api.resource.ResourceWrapper;
 import org.apache.sling.api.resource.ValueMap;
+import org.osgi.service.component.annotations.Component;
+import org.osgi.service.component.annotations.Reference;
 
-@Component
-@Service
+@Component(service = ResourceDecorator.class)
 public class TestResourceDecorator implements ResourceDecorator {
 
     @Reference
diff --git a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java b/src/main/java/org/apache/sling/models/it/services/package-info.java
similarity index 61%
copy from src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
copy to src/main/java/org/apache/sling/models/it/services/package-info.java
index a9e1923..1f5740a 100644
--- a/src/main/java/org/apache/sling/models/it/services/TestBindingsValuesProvider.java
+++ b/src/main/java/org/apache/sling/models/it/services/package-info.java
@@ -14,22 +14,8 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.sling.models.it.services;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
 
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-
-@Component
-@Service(value = Map.class)
-@Property(name = "javax.script.name", value = "*")
-public class TestBindingsValuesProvider extends HashMap<String, Object> {
+@Version("1.0")
+package org.apache.sling.models.it.services;
 
-    public TestBindingsValuesProvider() {
-        super.put("testBindingsObject", Collections.singletonMap("name", "value"));
-    }
-}
+import org.osgi.annotation.versioning.Version;
diff --git a/src/main/java/org/apache/sling/models/it/servlets/PathBoundServlet.java b/src/main/java/org/apache/sling/models/it/servlets/PathBoundServlet.java
index 6385792..18c4209 100644
--- a/src/main/java/org/apache/sling/models/it/servlets/PathBoundServlet.java
+++ b/src/main/java/org/apache/sling/models/it/servlets/PathBoundServlet.java
@@ -18,15 +18,18 @@ package org.apache.sling.models.it.servlets;
 
 import java.io.IOException;
 
+import javax.servlet.Servlet;
 import javax.servlet.ServletException;
 
-import org.apache.felix.scr.annotations.sling.SlingServlet;
 import org.apache.sling.api.SlingHttpServletRequest;
 import org.apache.sling.api.SlingHttpServletResponse;
 import org.apache.sling.api.servlets.SlingSafeMethodsServlet;
 import org.apache.sling.models.it.models.RequestSelfModel;
+import org.apache.sling.servlets.annotations.SlingServletPaths;
+import org.osgi.service.component.annotations.Component;
 
-@SlingServlet(paths = "/apps/rtpickerrequest")
+@Component(service = Servlet.class)
+@SlingServletPaths("/apps/rtpickerrequest")
 public class PathBoundServlet extends SlingSafeMethodsServlet {
 
     @Override
@@ -34,4 +37,5 @@ public class PathBoundServlet extends SlingSafeMethodsServlet {
         RequestSelfModel model = request.adaptTo(RequestSelfModel.class);
         response.setStatus(200);
     }
+
 }